brew安装php56后库未加载错误

Cza*_*ino 8 macos homebrew php-5.6

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

brew install php56
Run Code Online (Sandbox Code Playgroud)

一切运行并完成正常,但当我运行时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
Run Code Online (Sandbox Code Playgroud)

我该如何解决?

Den*_*Den 17

试试这个

brew uninstall --ignore-dependencies node icu4c
brew install node
Run Code Online (Sandbox Code Playgroud)


lyn*_*ynx 7

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

brew upgrade php
Run Code Online (Sandbox Code Playgroud)

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


Cza*_*ino 4

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

brew link --overwrite php56
Run Code Online (Sandbox Code Playgroud)

PS在使用 运行之前--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
Run Code Online (Sandbox Code Playgroud)