我正在使用自制程序在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
我该如何解决这个问题?
答案 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
答案 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
为我工作。