mac安装ImageMagick与PHP扩展Imagick

2020-01-09 01:24:28

mac安装ImageMagick和php7.2扩展Imagick,从网上搜索教程,感觉好少,有的教程看起来也很麻烦,不过安装起来,没想到竟然如此简单。不非纯灰之力。

步骤一:

    安装ImageMagick


    brew install ImageMagick

    

    直接成功


步骤而:

    安装PHP扩展Imagick

    直接 sudo pecl install imagick

    竟然直接完事了,并且自动配置到了php.ini 上,真是太智能了,重启php,访问接口,好来。


如果中间出现了什么差错,请看下面的地址。

参考地址 mac安装ImageMagick与PHP扩展Imagick


一、安装ImageMagick


    curl -O ftp://ftp.imagemagick.org/pub/ImageMagick/ImageMagick.tar.gz  


    tar -zxf ImageMagick.tar.gz  


    cd ImageMagick--7.0.7-21/ 


    ./configure --prefix=/usr/local/ImageMagick  


    make  


    sudo make install 




 二、安装PHP扩展Imagick


看了网上好多方式安装,尝试了很多次,进了各种坑,还是发现这种方式最好。


1、pear/pecl 需要单独进行安装


curl -O http://pear.php.net/go-pear.phar


sudo php -d detect_unicode=0 go-pear.phar


输入1,回车,配置pear路径为:/usr/local/pear,回车


输入4,回车,配置命令路径为:/usr/local/bin,回车


回车两次,其他让其默认,安装完成


pear version   检查pear安装是否成功




2、通过pecl安装imagick扩展


sudo pecl install imagick


如果出现pkg-config: command not found,就执行brew install pkg-config,然后再执行一次上步的安装即可,其他问题见下面问题及解答


然后出来Please provide the prefix of Imagemagick installation[autodetect] :


输入/usr/local/ImageMagick,也就是上一步的前缀,注意大小写


然后出现:




就说明安装成功了,同时提醒你到php.ini里添加extension=imagick.so这句扩展




3、查看扩展是否成功安装


php -m 查看扩展已经安装上了,但是phpinfo()在浏览器中并没有显示出来,此时重启php-fpm即可:


php-fpm.restart




php -m  ==看php扩展


php -i    ==看phpinfo


php -i |grep php.ini   ==查看php.ini所在位置



三、遇到的问题:


问题1:


checking for MagickWand.h header file… configure: error: Cannot locate header file MagickWand.h  




原因:


ImageMagick 6.8这个版后的目录结构变了,旧版本头文件是放在/usr/local/ImageMagick/include/ImageMagick目录的,而ImageMagick 6.8则是放在/usr/local/ImageMagick/include/ImageMagick-6




解决方法:添加软连接,命令如下


sudo ln -s /usr/local/ImageMagick/include/ImageMagick-7  /usr/local/ImageMagick/include/ImageMagick 


make && sudo make install


    


问题2:  


/usr/local/ImageMagick/bin/MagickWand-config: line 53: pkg-config: command not found




原因:没有安装pkg-config工具




解决方法:


brew install pkg-config 


    




问题3:错误信息


 ./php_imagick.h:49:12: fatal error: ‘wand/MagickWand.h’ file not found


    #  include <wand/MagickWand.h>


           ^


    1 error generated.


    make: *** [imagick_class.lo] Error 1




原因:没安装pkg-config工具导致




解决方法:


按照上一步安装pkg-config 即可。需要注意的是 少一个参数或者有一个不对的,可能会折腾好久。




问题4:


No releases available for package "pecl.php.net/imagick"


网络问题,换个快点的网络即可




问题5:


pecl/imagick is already installed and is the same as the released version 3.4.3


sudo pecl uninstall imagick,然后再sudo pecl install imagick


  • 2019-10-19 11:22:49

    window安装ffmpeg-concat出现的坑和解决办法

    最后还是选择了fluent-ffmpeg,没特效就没特效吧。最起码有声音吗。 ffmpeg-contact也可以有声音,但是需要先提取出来再合并进去,不知道能不能有效同步,果断放弃。

  • 2019-10-19 13:37:44

    v-model里使用过滤器

    档所述过滤器只能用在v-bind指令和{{}}表达式中,v-model中使用过滤器是一种思维误区。 因为v-model里实现数据显示和存储格式的转换应该是双向的。如下例:

  • 2019-10-19 16:35:45

    Vue.directive使用注意

    首先,Vue.directive要在实例初始化之前,不然会报错,还有,定义的指令不支持驼峰式写法,也会报下面同样的错,虽然在源码中没有找到在哪里统一处理大小写,但是在有关directive的方法中捕捉到的指令命名统一变为小写,所以,还是用'-'或者'_'分割吧。

  • 2019-10-21 08:39:54

    vue slot用法以及使用介绍

    通过上面的内容可以知道,在slot组件中引入了slot的子组件,而且又在子组件标签内添加了新的标签内容,但页面上并没有将子组件标签内的标签内容显示出来,

  • 2019-10-21 15:06:27

    yarn详细入门教程

    Yarn 是 Facebook, Google, Exponent 和 Tilde 开发的一款新的 JavaScript 包管理工具。就像我们可以从官方文档了解那样,它的目的是解决这些团队使用 npm 面临的少数问题,即: