Установка 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

VN:F [1.9.21_1169]
Rating: 0.0/10 (0 votes cast)
VN:F [1.9.21_1169]
Rating: 0 (from 0 votes)

Теги:

Ваш отзыв