我们使用yum方式安装ImageMagick,使用源码包安装php的imagick扩展。
下面是安装步骤,强烈建议先看一下后面的错误处理再安装。

yum install ImageMagick ImageMagick-devel
cd /root
wget http://pecl.php.net/get/imagick-3.1.2.tgz
tar xvf imagick-3.1.2.tgz
cd imagick-3.1.2
phpize
./configure --with-php-config=/usr/local/php/bin/php-config      //这里要根据php的实际情况来选择
make
make test    //如果有问题,请看后面的错误处理。
make install
vim ……/php.ini                  //见后面错误处理。
删掉proc_open shell_exec        //见后面错误处理。
加入extension=imagick.so        //见后面错误处理。
php -m|grep imagick            //见后面错误处理。

错误处理

make完成之后可能会出现下面的错误。

主要是php配置的问题,需要打开proc_open()和shell_exec()。

  • 提示proc_open()是需要的。
  • +-----------------------------------------------------------+
    | ! ERROR ! |
    | The test-suite requires that proc_open() is available. |
    | Please check if you disabled it in php.ini. |
    +-----------------------------------------------------------+

    QQ20140610-1

  • 提示shell_exec()是需要的。
  • Warning: shell_exec() has been disabled for security reasons in /root/imagick-3.1.2/run-tests.php on line 265

    QQ20140610-2

    处理方法:

    这两个问题处理方法相同,打开php.ini。
    修改disable_functions,将proc_open和shell_exec删除。
    php的路径一般为/etc/php.ini;
    或php安装目录下的/etc/php.ini,如/usr/local/php/etc/php.ini 。
    修改完成之后最好重启一下php。
    QQ20140610-3
    运行make test出现下面提示表示可以进行make install了。
    QQ20140610-4
    全部安装完成之后通过phpinfo或下面的方式查看扩展是否已经正常安装。
    QQ20140610-5