mac环境下通过homebrew安装的php报错解决:PHP Startup: Unable to load dynamic library

起因

注:可以直接查看最下面的解决方案

事情的起因是这样的:
通过下面的命令安装imagic扩展(不要问我为什么装这玩意儿,抽风了可能)

   brew install php55-imagick

运行 php --version发现报错信息

安装imagick报错

注:此处解决方案参考了这里
https://github.com/Homebrew/homebrew-php/issues/1556

报错原因是因为安装的imagick扩展与php版本不匹配,通过下面的命令重新安装

 brew reinstall php55-imagick --build-from-source

运行 php --version发现新的报错信息

imagick报错信息

这个原因一直没找到

然后我一想:我管它什么原因,这玩意儿我压根就不需要吧,卸载了就是了
执行

brew uninstall php55-imagick

果然,又报错了:


stackoverflow上搜索了半天,几乎所有提供的解决方案都是重装imagick
but,前面装过了还是会报错啊

先是在php.ini文件中看看在哪里启用了imagick这个扩展,并没有发现

附:php.ini的路径是:
/usr/local/etc/php/5.5(如果你跟我一样是通过homebrew安装的php的话)

最终解决方案

注:最后的解决方法参考这里
http://stackoverflow.com/questions/5282264/php-warning-php-startup-unable-to-load-dynamic-library

先执行下面的命令,获取所有跟php配置相关的文件的路径,终于找到了通过homebrew安装的扩展的位置

php -i | grep ini

接下来就简单了,打开ext-imagick.ini文件

cd /usr/local/etc/php/5.5/conf.d/
vim ext-imagick.ini

注销掉extentions=""这行就可以了

这下,世界终于安静了,每次启动php的时候静悄悄的,再也没有烦人的warning提示了

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Composer Repositories Composer源 Firegento - Magento模块Comp...
    零一间阅读 9,347评论 1 66
  • php.ini设置,上传大文件: post_max_size = 128Mupload_max_filesize ...
    bycall阅读 11,787评论 3 64
  • 周六,阳光也正好。 场景——接到电话,原本要逛街的计划要泡汤了,是要去医院跑一趟。表妹的孩子磕了一下,...
    小鹿panda阅读 2,299评论 0 0
  • 7年来,为了寻找她,我从中国的北边到南边,从华北平原到珠三角再到四川盆地,每到一个城市,我都告诉自己,这将会是最后...
    雯铱铱阅读 3,621评论 1 4
  • 夜寒风乱摇壁影, 独坐墙角赏群星。 秋霜冬雪总无情, 任由点滴到天明。
    禾火日月阅读 3,106评论 0 0