brew安装php56后库未加载错误

时间:2015-01-12 06:07:47

标签: macos homebrew php-5.6

我正在使用自制程序在OSX Mavericks上从php5.5升级到php5.6。我跑

brew install php56

一切都运行良好,但是当我运行php -v时出现以下错误

dyld: Library not loaded: /usr/local/opt/icu4c/lib/libicui18n.53.dylib
Referenced from: /usr/local/bin/php
Reason: image not found
Trace/BPT trap: 5

我该如何解决这个问题?

7 个答案:

答案 0 :(得分:16)

试试这个

brew uninstall --ignore-dependencies node icu4c
brew install node

答案 1 :(得分:3)

对我来说,简单地升级php很有帮助。

brew upgrade php

对应的文件dyld: Library not loaded: /usr/local/opt/icu4c/lib/libicui18n.<version>.dylib不存在,但是文件较新。因此,与其他依赖项相比,我的php版本要落后一些,后者在升级它们时可能会升级icu4c。 (是节点还是postgresql?)

答案 2 :(得分:2)

就我而言,这是先前安装的符号链接问题。运行后一切都很好

brew link --overwrite php56

P.S。在使用--overwrite之前,请尝试不要。如果您像我一样得到以下错误,那么请继续。

Linking /usr/local/Cellar/php56/5.6.3...
Error: Could not symlink bin/pear
Target /usr/local/bin/pear
is a symlink belonging to php55. You can unlink it:
  brew unlink php55

To force the link and overwrite all conflicting files:
  brew link --overwrite php56

To list all files that would be deleted:
  brew link --overwrite --dry-run php56

答案 3 :(得分:2)

之前的解决方案无效:

$ php -i
dyld: Library not loaded: /usr/local/opt/icu4c/lib/libicui18n.55.dylib
  Referenced from: /usr/local/bin/php
  Reason: image not found
Trace/BPT trap: 5

解决了:

$ brew update && brew upgrade icu4c

请参阅https://github.com/Homebrew/homebrew-php/issues/1701

答案 4 :(得分:1)

为了解决这个问题(Mavericks 10.9.5),必须使用in this GitHub issue描述的整个例程,即:

brew install php56-mcrypt

(在我的情况下,我也需要php-switcher,因为那是缺失的。)

我之前安装了PHP 5.4和5.6,其中5.4是活动的(“链接”) - 我想切换。我安装了ol { list-style-position: outside; } div { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; width: 150px; display: inline; }软件包,这是让你这么做的一种非常巧妙的方法,但是在上述程序之前它没有用。

答案 5 :(得分:1)

  

dyld:未加载库:/usr/local/opt/icu4c/lib/libicui18n.53.dylib

这听起来像icu4c的问题。所以试试:

brew uninstall icu4c && brew install icu4c
brew unlink icu4c && brew link icu4c --force

如果还有其他问题,请brew doctor进行调查。

答案 6 :(得分:0)

filterPlaces

为我工作。