Установка PHPImage через PECL на Mac

Я пытаюсь установить расширение php imagick на Mac с High Sierra 10.13.5.

У меня установлен PHP 7.2 через brew и установлен PEAR 1.10.5. При попытке установить Imagick с помощью sudo pecl install imagick я получаю:

Build process completed successfully
Installing '/usr/include/php/ext/imagick/php_imagick_shared.h'
ERROR: failed to mkdir /usr/include/php/ext/imagick

Похоже, я нажимаю разрешения Mac, где каталог установки должен находиться в /usr/local, но я не могу понять, как его изменить. Любые идеи, как это исправить?

посмотрите здесь, один из ответов может иметь отношение к вашей проблеме.

YvesLeBorg 19.06.2018 11:49

Посмотрите здесь stackoverflow.com/a/50529784/2836621

Mark Setchell 19.06.2018 12:02

Я посмотрел на show-config и изменил все каталоги, указывающие на /usr, на /usr/local, но, похоже, это ничего не помогло. Все еще пытается скопировать файл заголовка на /usr/include

Simon 19.06.2018 12:21

Для справки: у меня была такая же проблема с запуском pecl install xdebug, неожиданно исправил запуск той же команды во второй раз (без sudo оба раза).

Y. E. 25.08.2018 14:29
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
3
4
5 112
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

В конце концов, мне понадобился PHP 7.1, а не 7.2, но у меня все еще была та же проблема.

Не уверен, что все шаги, которые я предпринял, были необходимы, но вот как я это обошел:

  • Получить текущий каталог расширений php при запуске php-config
  • Скопируйте все из этого каталога (в моем случае /usr/lib/php/extensions/no-debug-non-zts-20160303) в эквивалент в /usr/local, поэтому в моем случае в /usr/local/lib/php/extensions/no-debug-non-zts-20160303
  • Обновите php.ini и установите extensions_dir в новый каталог в /usr/local.
  • Перейдите в каталог сборки из ошибки pecl и найдите файл imagick tgz
  • Извлеките это и войдите в созданный каталог
  • Как root:
    • запустить ./phpize
    • запустить ./configure
    • запустить make
    • Отредактируйте make-файл и измените каталог include на эквивалент /usr/local.
    • запустить make install
  • Отредактируйте php.ini и добавьте imagick.so в раздел расширений

Кажется, сейчас это работает для меня, но, вероятно, это не самый простой способ его установки.

Другие вопросы по теме