php安装imagick插件相关操作

imagick插件最终调用的还是ImagickMagick里面的api,所以安装步骤如下:

一、安装ImageMagick

  • 官网下载源码包
  • unzip ImageMagick-7.0.7-9.zip
  • cd ImageMagick-7.0.7-9
  • ./configure --prefix=/usr/local/imagemagick (这里--prefix=/usr/local/imagemagick指定ImageMagick的安装路径)
  • make && make install

二、安装imagick插件

  • 官网下载源码包
  • tar -zxvf imagick-3.4.3.tgz
  • cd imagick-3.4.3
  • /usr/local/php/bin/phpize
  • ./configure --with-php-config=/usr/local/php/bin/php-config --with-imagick=/usr/local/imagemagick (这里--with-imagick=/usr/local/imagemagick表示刚刚安装的ImageMagick的安装路径)
  • 但是发现出了一个error:Cannot locate header file magick-wand.h
  • 网上说,是因为ImageMagick版本升级之后,ImageMagick目录名字变了。所以解决方法是:ln -s /usr/local/imagemagick/include/ImageMagick-7 /usr/local/imagemagick/include/ImageMagick
  • 本来以为这样就不会报错了,但还是报这个错
  • 去找了一下,发现/usr/local/imagemagick/include/ImageMagick/MagickWand/里面没有magick-wand.h这个文件,只有MagickWand.h文件
  • 所以故技重施,又软链接了一把ln -s MagickWand.h magick-wand.h
  • 之后再./configure ……make && make install,这回imagick插件就可以安装成功了
  • 再去php.ini里面开启extension=imagick.so
  • 最后,phpinfo()里面查看一下ImageMagick和imagick是否已经开启,版本是否正确。

之所以不用yum install ImageMagick来安装ImageMagick,是因为我发现用yum安装的不是最新的,而且yum update ImageMagick也无法升级到最新版本。