PlugIN
@PlugIN
A Little Programmer

ImageMagick® — проблема после сборки из исходников?

Добрый день.

ОС - CentOS 7. PHP - как модуль Apache. Решил попробовать использовать ImageMagick® для поддержки конвертации в *.webp для одного WordPress плагина. Установил сначала пакет, потом увидел, что нет встроенной поддержки данного формата и решил собрать из исходников (шел по инструкции, ссылка: https://www.linuxhelp.com/how-to-compile-imagemagi... Собралось хорошо, при проверке php -m | grep imagick выводилось то, что нужно - "imagick". Но в файле "imagick.ini" у меня было extension=imagick.so (ImageMagick-6.9.10), а поскольку я собрал ImageMagick® заново (ImageMagick 7.0.10-22 Q16 x86_64) мне нужно было указать другой файл динамической библиотеки, а именно "libMagickCore-7.Q16HDRI.so.7.0.0". Этот файл был сначала в директории "/usr/local/lib/" и при проверке выводилось предупреждение: "PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib64/php/modules/libMagickCore-7.Q16HDRI.so.7' - /usr/lib64/php/modules/libMagickCore-7.Q16HDRI.so.7: cannot open shared object file: No such file or directory in Unknown on line 0". Я не знаю, можно ли так, но я перенес файл библиотеки в ту директорию, которую ожидает увидеть PHP. И теперь при вводе php -m | grep imagick получаю: "PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib64/php/modules/libMagickCore-7.Q16HDRI.so.7.0.0' - /usr/lib64/php/modules/libMagickCore-7.Q16HDRI.so.7.0.0: undefined symbol: DrawPathStart in Unknown on line 0". Подскажите, pls, что здесь не так.

UPD Эта команда ldconfig /usr/lib64/php/modules/ вывела следующее:
"ldconfig: Can't link /usr/lib64/php/modules/libMagickCore-7.Q16HDRI.so.7 to libMagickCore-7.Q16HDRI.so.7.0.0
ldconfig: Can't create temporary cache file /etc/ld.so.cache~: Permission denied
".

Disclaimer: в Linux я считаю себя начинающим, поэтому для вас это может показаться простым, но не для меня.
  • Вопрос задан
  • 232 просмотра
Решения вопроса 1
PlugIN
@PlugIN Автор вопроса
A Little Programmer
Товарищи разработчики, вопрос решен ) Нужно было сделать то, что я в комменте сам написал. Заново установил "imagick": pecl install imagick, в "imagick.ini" указал: extension=imagick.so. Может что-то забыл упомянуть, позже, возможно, дополню.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы