Установка инструмента ImageMagick (обработка изображений) на RHEL/CentOS и Fedora

ImageMagick – это бесплатный набор простого программного обеспечения с открытым исходным кодом для любого вида обработки изображений, используемый для создания, редактирования, преобразования, отображения файлов изображений.

Он может читать и записывать более 200 форматов изображений, таких как JPEG, GIF, PNG, TIFF и форматы изображений Photo CD, а также используется для создания миниатюр или генерации CAPTCHA. Он также включает в себя параметры командной строки для создания прозрачных или анимированных gif-изображений и многие другие функции, такие как изменение размера, улучшение, вращение или добавление специальных эффектов к изображению.

Для использования инструмента ImageMagick с языком программирования PHP или Perl вам потребуется установить ImageMagick с расширением Imagick PHP для PHP и расширение ImageMagick-Perl для Perl.

Imagick – это простое расширение PHP для создания и изменения изображений с использованием программного интерфейса приложений ImageMagick API. Существует путаница в названии, так как люди думают, что ImageMagick и Imagick это одно и то же, но вы можете использовать ImageMagick без расширения Imagick, но вам нужно установить оба на своем компьютере, чтобы использовать и запускать его.

Установка ImageMagick из репозитория

Сначала установите следующие предварительные пакеты php-pear, php-devel и gcc для компиляции расширения Imagick PHP.

# yum install php-pear php-devel gcc 
Install PHP Extensions in CentOS 8

После установки пакетов php-pear, php-devel и gcc вы можете установить программное обеспечение ImageMagick для поддержки PHP и Perl с помощью команды yum.

# yum install ImageMagick ImageMagick-devel ImageMagick-perl

ВАЖНО: ImageMagick недоступен в CentOS/RHEL 8, и вместо него используется GraphicsMagick, который является форком ImageMagick.

Для установки GraphicsMagick на CentOS/RHEL 8 выполните следующую команду.

# dnf info GraphicsMagick
# dnf install GraphicsMagick GraphicsMagick-devel GraphicsMagick-perl
Install GraphicsMagick in CentOS 8

Затем убедитесь, что ImageMagick установлен на вашей системе, проверив его версию.

# convert --version
 
Version: ImageMagick 6.7.8-9 2019-02-01 Q16 http://www.imagemagick.org
Copyright: Copyright (C) 1999-2012 ImageMagick Studio LLC
Features: OpenMP    

Пользователи CentOS/RHEL 8 могут выполнить следующую команду, чтобы проверить версию GraphicsMagick, установленную в системе.

# gm version

GraphicsMagick 1.3.33 2019-07-20 Q16 http://www.GraphicsMagick.org/
Copyright (C) 2002-2019 GraphicsMagick Group.
Additional copyrights and licenses apply to this software.
See http://www.GraphicsMagick.org/www/Copyright.html for details.

Установка ImageMagick 7 из исходного кода

Для установки ImageMagick из исходного кода вам понадобится правильная среда разработки с компилятором и соответствующими инструментами разработки. Если у вас нет необходимых пакетов на вашей системе, установите инструменты разработки, как показано ниже:

# yum groupinstall 'Development Tools'
# yum -y install bzip2-devel freetype-devel libjpeg-devel libpng-devel libtiff-devel giflib-devel zlib-devel ghostscript-devel djvulibre-devel libwmf-devel jasper-devel libtool-ltdl-devel libX11-devel libXext-devel libXt-devel lcms-devel libxml2-devel librsvg2-devel OpenEXR-devel php-devel

Теперь загрузите последнюю версию исходного кода ImageMagick с помощью следующей команды wget и извлеките его.

# wget https://www.imagemagick.org/download/ImageMagick.tar.gz
# tar xvzf ImageMagick.tar.gz

Настройте и скомпилируйте исходный код ImageMagick. В зависимости от характеристик аппаратного обеспечения вашего сервера, это может занять некоторое время для завершения.

# cd ImageMagick*
# ./configure
# make
# make install

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

# magick -version

Version: ImageMagick 7.0.8-28 Q16 x86_64 2019-02-19 https://imagemagick.org
Copyright: © 1999-2019 ImageMagick Studio LLC
License: https://imagemagick.org/script/license.php
Features: Cipher DPC HDRI OpenMP 
Delegates (built-in): bzlib djvu fontconfig freetype jng jpeg lzma openexr pangocairo png tiff wmf x xml zlib

Установите расширение Imagick PHP

Затем скомпилируйте Imagick для расширения PHP. Для этого просто выполните следующую команду ‘pecl‘. Она установит модуль расширения ImageMagick и imagick PHP под названием ‘imagick.so‘ в каталоге /usr/lib/php/modules. Если вы используете систему 64-битную, путь к каталогу модулей будет /usr/lib64/php/modules.

Примечание: Он попросит вас указать префикс установки Imagemagick, просто нажмите Enter для автоматического обнаружения.

# pecl install imagick 

downloading imagick-3.4.3.tgz ...
Starting to download imagick-3.4.3.tgz (245,410 bytes)
...................................................done: 245,410 bytes
19 source files, building
running: phpize
Configuring for:
PHP Api Version:         20100412
Zend Module Api No:      20100525
Zend Extension Api No:   220100525
Please provide the prefix of Imagemagick installation [autodetect] : 

Теперь добавьте расширение ‘imagick.so‘ в файл ‘/etc/php.ini‘.

echo extension=imagick.so >> /etc/php.ini

Затем перезапустите веб-сервер Apache.

# service httpd restart

Проверьте расширение Imagick PHP, выполнив следующую команду. Вы увидите расширение Imagick, аналогичное ниже.

# php -m | grep imagick

imagick

Установите расширение GMagick PHP

Выполните следующие команды для компиляции и установки расширения GMagick PHP.

# cd /usr/local/src
# wget https://pecl.php.net/get/gmagick
# tar xfvz gmagick
# cd gmagick-*
# phpize
# ./configure
# make
# make install

Теперь добавьте расширение ‘gmagick.so‘ в файл ‘/etc/php.ini‘.

# echo extension=gmagick.so >> /etc/php.ini

Затем перезапустите веб-сервер Apache.

# systemctl restart httpd

Проверьте расширение gmagick PHP, выполнив следующую команду.

# php -m | grep gmagick

gmagick

Вы также можете создать файл с названием ‘phpinfo.php‘ в корневом каталоге вашего веб-сайта (например, /var/www/html/).

# vi /var/www/html/phpinfo.php

Добавьте следующий код.

<?php

     phpinfo ();
?>

Откройте ваш любимый веб-браузер и введите ‘http://localhost/phpinfo.php‘ или ‘http://ip-addresss/phpinfo.php‘ и проверьте расширение.

Check Imagick Version
Verify Gmagick PHP Extension

Source:
https://www.tecmint.com/install-imagemagick-in-linux/