AddThis Smart Layers

вторник, 13 мая 2014 г.

Как установить ImageMagick на CentOS

На днях на сервере одного из клиентов нужно было установить библиотеку ImageMagick. Казалось бы, простая задача, устанавливаем библиотеку при помощи команды yum.
Но, как выяснилось, при установке из стандартных репозиториев для CentOS устанавливается устаревшая версия ImageMagick 6.2.8, а нам нужна была самая свежая.



Для начала нужно удались устаревшую версию
yum erase ImageMagick*

Теперь нужно установить все зависимые библиотеки
yum install tcl-devel libpng-devel libjpeg-devel ghostscript-devel bzip2-devel freetype-devel libtiff-devel

Далее, качаем и распаковываем свежые сорсы ImageMagick
wget ftp://ftp.imagemagick.org/pub/ImageMagick/ImageMagick.tar.gz
tar -zxf ImageMagick.tar.gz
cd ImageMagick-x.y.z
Где x.y.z будет текущая версия ImageMagick.


Теперь нужно сконфигурировать библиотеку с нужными нам настройками и расширениями. При необходимости помним, что всегда есть возможность воспользоваться ключом "–help".
./configure --prefix=/usr/local --with-bzlib=yes --with-fontconfig=yes --with-freetype=yes --with-gslib=yes --with-gvc=yes --with-jpeg=yes --with-jp2=yes --with-png=yes --with-tiff=yes

После того как процесс конфигурации закончится можно приступать к подготовке к компиляции
make

Процесс этот займет довольно длительное время, в зависимости от мощности сервера. Можно пойти попить кофе, либо заняться чем-то другим.

Когда же, наконец, все будет готово можно запускать саму компиляцию.
make install

После окончания установки можно сделать проверку
convert --version

Результатом проверки должно быть нечто подобное:
Version: ImageMagick x.y.z 2014-06-05 Q16
http://www.imagemagick.org
Copyright: Copyright (C) 1999-2014 ImageMagick Studio LLC
Где x.y.z будет текущая установленная версия ImageMagick.

Но это еще не все. Теперь нужно добавить поддержку ImageMagick в PHP.

Здесь воспользуемся PECL.

Сначала удалим старую версию модуля (если вдруг она уже была установлена)
pecl uninstall imagick

И установим более свежую
pecl install imagick

Обычно после установки модуля при помощи PECL, он уже будет добавлен в файл настроек php.ini, но если по какой-то причине этого не произошло, то добавим подгрузку модуля ручками.
extension=imagick.so

И напоследок не забыть сделать рестарт Apache
service httpd restart

Вот и все :-) Никаких танцев с бубном.

Комментариев нет :

Отправить комментарий