开发者问题收集

PHP 无法加载 Imagick 库 - PHP 启动:无法加载动态库

2018-10-30
37211

我有 High Sierra 操作系统 - 版本 10.13.6 PHP 版本:PHP 7.1.9

当我尝试执行命令 php -v 时总是出现这样的错误:

PHP Startup: Unable to load dynamic library '/usr/local/php5-7.1.9-20170914-100859/lib/php/extensions/no-debug-non-zts-20160303/imagick.so' - dlopen(/usr/local/php5-7.1.9-20170914-100859/lib/php/extensions/no-debug-non-zts-20160303/imagick.so, 9): Library not loaded: /usr/local/opt/imagemagick/lib/libMagickWand-7.Q16HDRI.5.dylib
Referenced from: /usr/local/php5-7.1.9-20170914-100859/lib/php/extensions/no-debug-non-zts-20160303/imagick.so Reason: image not found in Unknown on line 0

Warning: PHP Startup: Unable to load dynamic library '/usr/local/php5-7.1.9-20170914-100859/lib/php/extensions/no-debug-non-zts-20160303/imagick.so' - dlopen(/usr/local/php5-7.1.9-20170914-100859/lib/php/extensions/no-debug-non-zts-20160303/imagick.so, 9): Library not loaded: /usr/local/opt/imagemagick/lib/libMagickWand-7.Q16HDRI.5.dylib
Referenced from: /usr/local/php5-7.1.9-20170914-100859/lib/php/extensions/no-debug-non-zts-20160303/imagick.so Reason: image not found in Unknown on line 0 PHP 7.1.9 (cli) (built: Sep 14 2017 10:05:35) ( NTS ) Copyright (c) 1997-2017 The PHP Group Zend Engine v3.1.0, Copyright (c) 1998-2017 Zend Technologies with Zend OPcache v7.1.9, Copyright (c) 1999-2017, by Zend Technologies with Xdebug v2.5.3, Copyright (c) 2002-2017, by Derick Rethans

据我所知,我的 php.ini 无法加载 imagick 库。 我已经使用 brew 安装了 Imagick,文件夹 /usr/local/php5-7.1.9-20170914-100859/lib/php/extensions/no-debug-non-zts-20160303/ 中有一个文件 imagick.so

我已经在很多来源中搜索了这个问题,我在 StackOverflow 中也发现了很多类似的问题,它似乎与我的问题类似,但仍然没有解决我的问题。

我仍然可以运行 PHP 脚本,但无法使用 Imagick 进行一些图像处理。

2个回答

尝试:

sudo pecl uninstall imagick && sudo pecl install imagick
Ricardo Coelho
2020-07-17

为了进行调试,我建议您将 dep 移动到易于调试的文件夹,例如 /User/<you>/Documents/ 。您可以从绝对路径加载它:

extention="/User/<you>/Documents/<project 并检查是否是路径问题。

我认为您正在尝试安装比当前 PHP 版本更旧的依赖项,因为您正在从 php56 加载扩展,但您使用的是 php71

https://stackoverflow.com/a/50529784/5893008

Even Stensberg
2019-04-15