dyld:图书馆没有加载:/usr/local/lib/libpng16.16.dylib与任何PHP相关

使用任何PHP应用程序的结果在:

dyld: Library not loaded: /usr/local/lib/libpng15.15.dylib Referenced from: /usr/local/bin/php Reason: image not found [1] 4494 trace trap php 

我的大部分PHP应用程序安装使用自制软件,除了composer php(使用curl安装)

我试图删除libpng和重新安装与自制软件无济于事。

接下来是切换到最新版本的libpng 1.5,如错误消息中所述:

 $ brew info libpng libpng: stable 1.6.10 (bottled) http://www.libpng.org/pub/png/libpng.html /usr/local/Cellar/libpng/1.5.17 (15 files, 1.0M) Poured from bottle /usr/local/Cellar/libpng/1.5.18 (15 files, 1.0M) Poured from bottle /usr/local/Cellar/libpng/1.6.10 (17 files, 1.3M) * $ brew switch libpng 1.5.18 Cleaning /usr/local/Cellar/libpng/1.5.17 Cleaning /usr/local/Cellar/libpng/1.5.18 Cleaning /usr/local/Cellar/libpng/1.6.10 16 links created for /usr/local/Cellar/libpng/1.5.18 

现在错误已经改变为:

 dyld: Library not loaded: /usr/local/lib/libpng16.16.dylib Referenced from: /usr/local/lib/libfreetype.6.dylib Reason: image not found [1] 6993 trace trap phpunit 

我正在运行小牛(10.9.2)和PHP 5.5.1。

提前致谢!

我build议你运行:

 $ brew update && brew upgrade 

直到几分钟前,我也有这个问题。 因为我有一个最新的PHP版本,我解决它:

 $ brew reinstall php55 

希望有所帮助。

我按照上面的说法(无论如何也跟不上啤酒),仍然有同样的问题:

 LAPTOP:folder Username$ php -v dyld: Library not loaded: /usr/local/lib/libpng15.15.dylib Referenced from: /usr/local/bin/php Reason: image not found Trace/BPT trap: 5 

然后想出一个更简单的方法:

在你的盒子上search你的libpng版本:

 # Requires locate & updatedb for mac os x # See Link [1] LAPTOP:folder Username$ locate libpng15.15.dylib /Applications/GIMP.app/Contents/Resources/lib/libpng15.15.dylib /usr/X11/lib/libpng15.15.dylib /usr/local/Cellar/libpng/1.5.14/lib/libpng15.15.dylib 

做一个符号链接:

 LAPTOP:folder Username$ ln -s /usr/local/Cellar/libpng/1.5.14/lib/libpng15.15.dylib /usr/local/lib/libpng15.15.dylib 

再试一次:

 LAPTOP:folder Username$ php -v PHP 5.3.26 (cli) (built: Aug 25 2013 16:07:23) Copyright (c) 1997-2013 The PHP Group Zend Engine v2.3.0, Copyright (c) 1998-2013 Zend Technologies with Xdebug v2.2.3, Copyright (c) 2002-2013, by Derick Rethans 

1) Mac OS X相当于定位

这是因为libpng没有符号链接。 你需要再次链接libpng。

 brew unlink libpng && brew link libpng 

你可能会得到一些错误。 我通过更正权限修复了这个错误。 也许这是因为卸载macports。

 sudo chown -R yourid:staff /usr/local/share/man/ 

再次创build链接,它会工作。

我通过将其复制到缺less的目录来解决此问题:

 cp /opt/X11/lib/libpng15.15.dylib /usr/local/lib/libpng15.15.dylib 

brew重新安装libpng不断的安装libpng16,而不是libpng15,所以我被迫做了以上。

在我的情况下,这是libjpeg 。 我所要做的就是运行brew reinstall libjpeg ,一切正常!

以防万一有人遇到这个问题,我解决了以下问题

 brew update && brew upgrade # installs libpng 1.6 

这造成了与其他包需要1.5的包,他们build立了一个错误,所以我把它链接:

 cd /usr/local/lib/ ln -s ../Cellar/libpng/1.5.18/lib/libpng15.15.dylib 

现在他们都是和睦相处,并肩而坐。 重build依赖1.5的软件包会更好,但是这可以作为一个快速的绷带修复。

我知道这个问题已经有了一个答案,提供了一个解决scheme。 但我想给你我两分钱帮助人们了解这个问题。 获取相同的问题我已经创build了一个具体的问题 我得到同样的问题,但只有与PHPStorm。 当我尝试从编辑器运行testing。

dyld是dynamic链接器

我播种dyld正在寻找/usr/local/lib/libpng15.15.dylib但在我的/ usr / local / lib /里面没有。 在那个文件夹中,我find了libpng16.16.dylib。

感谢评论,我不知道我的/ usr / bin / php是一个指向PHP 5.5.8的指针。 相反,/ usr / local / bin / php是5.5.14。 PHPStorm使用默认configuration的/ usr / bin / php。 当我通过控制台运行php时,我运行/ urs / local / bin / php。

所以,如果你得到一些dyld错误,也许你有一些错误的PHPconfiguration。 这是因为

 $ brew update && brew upgrade $ brew reinstall php55 

但我不知道为什么这不能解决问题给我。 也许是因为我有

我也有这个问题,并没有在这个线程的解决scheme为我工作。 事实certificate,问题是我在~/.bash_profile有这一行:

 alias php="/usr/local/php/bin/php" 

而事实certificate, /usr/local/php只是/usr/local/Cellar/php54/5.4.24/一个符号链接。 所以当我调用php -i我仍然调用php54。 我刚从我的bashconfiguration文件中删除了这行,然后php工作。

出于某种原因,即使php55正在运行,php54中的php.ini文件仍然被加载,每当我调用php时都会收到这个警告:

 PHP Warning: PHP Startup: Unable to load dynamic library '/usr/local/Cellar/php54/5.4.38/lib/php/extensions/no-debug-non-zts-20100525/memcached.so' - dlopen(/usr/local/Cellar/php54/5.4.38/lib/php/extensions/no-debug-non-zts-20100525/memcached.so, 9): image not found in Unknown on line 0 

为了解决这个问题,我只是把下面一行添加到我的bashconfiguration文件中:

 export PHPRC=/usr/local/etc/php/5.5/php.ini 

然后一切正常!

我有这个错误,没有通过brew update && brew upgrade来解决。 出于某种原因,我需要从头开始安装它:

$ brew install libpng

更新MAMP之后,我得到了这个问题,我设置的自定义$ PATH是错误的,因为新的PHP版本,所以PHP的错误版本被加载第一,这是触发错误的PHP版本。

更新我的.bash_profilepath修复了我的问题。