Я пытался установить библиотеку ImageMagick на Mac OS X Snow Leopard, и сначала я попробовал порт и, после того, как это не удалось, домашний процесс. Он обновил некоторые зависимости и установил ImageMagick без проблем.

Все идет нормально. Проблема возникла, когда я запустил Apache. Я получил следующую ошибку в системном журнале:

07/04/11 12:55:15   org.apache.httpd[41841] httpd: Syntax error on line 115 of /private/etc/apache2/httpd.conf: Cannot load /opt/local/apache2/modules/libphp5.so into server: dlopen(/opt/local/apache2/modules/libphp5.so, 10): Library not loaded: /opt/local/lib/libpng12.0.dylib\n  Referenced from: /opt/local/apache2/modules/libphp5.so\n  Reason: image not found

Я проверил /opt /local /lib и удивился! У меня нет libpng12.0, но есть libpng14.0.

Итак, насколько я могу судить, что-то пошло не так при установке библиотеки ImageMagick.

Теперь я не могу найти способ отката к предыдущим библиотекам, кроме копирования их из резервной копии. Знаете ли вы, если есть способ восстановить предыдущее состояние или переустановить Apache? Или это просто поврежденное состояние, и я должен переустановить OS X?

1 ответ1

1

(Адаптировано из моего комментария, поскольку это, похоже, помогает спрашивающему.)

В ошибке упоминаются некоторые файлы MacPorts, но ничего из Homebrew и ничего о ImageMagick.

Ваша конфигурация Apache 2 пытается загрузить модуль PHP 5, встроенный в MacPorts. Проблема в том, что модуль изначально был построен на более старой версии libpng (также в MacPorts). Новая версия libpng, вероятно, произошла от вашей прерванной попытки установить ImageMagick через MacPorts (libpng является зависимостью от ImageMagic и, по-видимому, также зависимостью от модуля PHP 5).

Если вы хотите перейти на Homebrew (от MacPorts), вам, вероятно, захочется собрать модуль PHP 5 Apache 2 через Homebrew и обновить конфигурацию Apache 2, чтобы использовать этот модуль вместо модуля MacPorts. Вы также можете удалить MacPorts, если вы не используете его ни для чего другого.

В качестве альтернативы, если вы просто хотите, чтобы все заработало снова, вы можете попробовать обновить модуль PHP 5 в MacPorts. sudo port upgrade php5 , вероятно, поможет.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .