Установка ImageMagick на php7.X
11 Nov 2019 | Автор: dd |Готовил тут под заказ сервер для KVS – вкратце это Kernel Video Sharing сервер, предназначенный для создания медиа-проектов разного уровня сложности. Судя по описанию, весьма навороченный продукт. И вот по листу требований там нужны Vesta CP, php7.X и Image::Magick.
Image::Magick – это набор тулзятин для чтения и конверта графических файлов, различных форматов. В данном случае для нарезки тумб прелоада видоса.
Vesta соответственно подтянула php7.4, а вот Image::Magick надо было ставить дополнительно. Ставится он довольно тривиально, вначале ставим весь php фарш, а потом его самого:
# yum install gcc php-devel php-pear
# yum -y install ImageMagick ImageMagick-devel
# pecl install imagick
# echo “extension=imagick.so” > /etc/php.d/imagick.ini
# service httpd restart
# service nginx restart
Но вот на стадии установке php-devel система стала сильно ругаццо, т.к по умолчанию пытается накатить библиотеки для php56, тогда как в системе стоит php74
Сыпятся какие то матюга вроде этих:
Requires: php(api) = 20131106-64
Installed: php-common-7.4.0~RC6-15.el7.remi.x86_64 (@remi-php74)
php(api) = 20190902-64
Available: php-common-5.4.16-46.el7.x86_64 (base)
php(api) = 20100412-64
Available: php-common-5.4.16-46.1.el7_7.x86_64 (updates)
php(api) = 20100412-64
Available: php-common-5.4.45-17.el7.remi.x86_64 (remi)
php(api) = 20100412-64
Available: php-common-5.4.45-18.el7.remi.x86_64 (remi)
php(api) = 20100412-64
Available: php-common-5.5.38-11.el7.remi.x86_64 (remi-php55)
php(api) = 20121113-64
Available: php-common-5.5.38-12.el7.remi.x86_64 (remi-php55)
php(api) = 20121113-64
Available: php-common-5.6.40-13.el7.remi.x86_64 (remi-php56)
php(api) = 20131106-64
Available: php-common-5.6.40-14.el7.remi.x86_64 (remi-php56)
php(api) = 20131106-64
Error: Package: php-pecl-memcache-3.0.8-4.el7.remi.5.6.x86_64 (remi-php56)
Requires: php(zend-abi) = 20131226-64
Installed: php-common-7.4.0~RC6-15.el7.remi.x86_64 (@remi-php74)
php(zend-abi) = 20190902-64
Available: php-common-5.4.16-46.el7.x86_64 (base)
php(zend-abi) = 20100525-64
Available: php-common-5.4.16-46.1.el7_7.x86_64 (updates)
php(zend-abi) = 20100525-64
Available: php-common-5.4.45-17.el7.remi.x86_64 (remi)
php(zend-abi) = 20100525-64
Available: php-common-5.4.45-18.el7.remi.x86_64 (remi)
php(zend-abi) = 20100525-64
Available: php-common-5.5.38-11.el7.remi.x86_64 (remi-php55)
php(zend-abi) = 20121212-64
Available: php-common-5.5.38-12.el7.remi.x86_64 (remi-php55)
php(zend-abi) = 20121212-64
Available: php-common-5.6.40-13.el7.remi.x86_64 (remi-php56)
php(zend-abi) = 20131226-64
Available: php-common-5.6.40-14.el7.remi.x86_64 (remi-php56)
php(zend-abi) = 20131226-64
You could try using –skip-broken to work around the problem
You could try running: rpm -Va –nofiles –nodigest
Проверяем версию пыха еще раз:
# php -v
PHP 7.4.0RC5 (cli) (built: Oct 29 2019 08:49:19) ( NTS )
Накатываем EPEL и Remi репозитарии
# yum install epel-release
# rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm
после чего ставим нужную версию:
# yum --enablerepo=remi-php74 install php-pear php-devel php-imagick php-gd
для версий 7.1/7.2/7.3 соответственно меняем версию репозитория и продолжаем установку.
После неё, наличие тулзы можно проверить либо через php -m, либо через родную команду
# convert –version
Version: ImageMagick 6.7.8-9 2019-08-08 Q16
Теги: су