Instalar ImageMagick en RHEL, Centos y Scientific Linux

Vamos a ver como instalar la popular herramienta de tratamiento de imágenes ImageMagick en Red Hat Enterprise Linux, Centos y Scientific Linux.

Pero, antes de nada, como diría Jack, vamos por partes.

¿Qué es ImageMagick?

Se trata de un conjunto de herramientas que permiten mostrar, manipular y convertir imágenes, además de leer y escribir en más 200 formatos. Sigue la filosofía de desarrollo del código abierto y es software libre, ya que utiliza una licencia Apache.

Si entramos más al detalle sabemos que son un conjunto de utilidades para la línea de comandos, con el fin de manipular imágenes, ya sea de forma individual o en lote.

Es muy utilizado para convertir imágenes a otros formatos de forma precisa.

ImageMagick junto a PHP

Para utilizarlo con PHP o con Perl, debemos instalarlo conjuntamente con su extensión correspondiente, para estos lenguajes de programación.

Instalar ImageMagick desde los repositorios

El producto y las extensiones ya se encuentran en los repositorios oficiales de las distribuciones. Por lo que su instalación es muy simple:

  1. yum install ImageMagick ImageMagick-devel ImageMagick-perl

Podemos comprobar la versión recién instalada:

  1. [root@servcentos]# convert --versio
  2.  
  3. Version: ImageMagick 6.7.8-9 2016-06-16 Q16 http://www.imagemagick.org
  4. Copyright: Copyright (C) 1999-2012 ImageMagick Studio LLC
  5. Features: OpenMP

Nota: Sí, para Centos 7, la versión que viene en los repositorios es algo viejuna.

Instalar ImageMagick 7 desde las fuentes

Si queremos tener para la última versión de un producto, por norma general es utilizar las fuentes y compilar, que es lo que aremos ahora.

Antes de nada, instalamos las herramientas necesarias para compilar con:

  1. yum groupinstall 'Development Tools'

Además de otros paquetes necesarios, para así sacarle todo su jugo:

  1. yum -y install bzip2-devel freetype-devel libjpeg-devel libpng-devel libtiff-devel 
  2. yum -y install giflib-devel zlib-devel ghostscript-devel djvulibre-devel libwmf-devel 
  3. yum -y install jasper-devel libtool-ltdl-devel libX11-devel libXext-devel libXt-devel 
  4. yum -y install lcms-devel libxml2-devel librsvg2-devel OpenEXR-devel php-devel

Nos descargamos la última versión desde la página oficial:

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

Y descomprimimos.

  1. tar xvf ImageMagick.tar.gz

Accedemos al directorio y empezamos con la compilación:

  1. cd ImageMagick-7.0.8-28/
  2. ./configure
  3. make
  4. make install

Una vez finalizado el proceso, que puede tardar un poco, según la capacidad de nuestro procesador, ya podemos comprobar la versión instalada:

  1. [root@servcentos]# magick -version
  2. Version: ImageMagick 7.0.8-28 Q16 x86_64 2019-02-21 https://imagemagick.org
  3. Copyright: © 1999-2019 ImageMagick Studio LLC
  4. License: https://imagemagick.org/script/license.php
  5. Features: Cipher DPC HDRI OpenMP
  6. Delegates (built-in): bzlib djvu fontconfig freetype jng jpeg lzma openexr pangocairo png tiff wmf x xml zlib

Instalar la extensión PHP para Imagick

Bien, ahora que ya tenemos el producto compilado en su última versión, vamos a ver como hacer lo propio con la extensión para PHP. Para ello vamos a utilizar la herramienta “pecl”

Si no la tenemos en el sistema, la podemos instalar:

  1. yum install php-pear

Instalamos:

  1. pecl install imagick

Una vez instalado, al final, nos indicará donde se encuentran los ficheros del módulo:

  1. Build process completed successfully
  2. Installing '/usr/include/php/ext/imagick/php_imagick_shared.h'
  3. Installing '/usr/lib64/php/modules/imagick.so'
  4. install ok: channel://pecl.php.net/imagick-3.4.3
  5. configuration option "php_ini" is not set to php.ini location
  6. You should add "extension=imagick.so" to php.ini

Añadimos la extensión al fichero de configuración de PHP:

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

Y reiniciamos Apache:

  1. systemctl restart httpd

Creamos el fichero correspondiente, para comprobar la configuración de PHP, desde el navegador:

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

Y añadimos:

  1. <?php
  2.  
  3.      phpinfo ();
  4. ?>

Guardamos y accedemos al navegador. Desta manera podemos comprobar que efectivamente la configuración es correcta:

Y esto es todo. Espero que la entrada os sea de utilidad en algún momento.

Fuentes consultadas:

Tecmint.com – Install ImageMagick in Linux
Wikipedia – ImageMagick
Serverfault.com – How the install pecl on a Linux system