最近需要使用npm安装apidoc,所以用brew安装了node,然后composer和php之类的都报同样的错误
dyld: Library not loaded: /usr/local/opt/icu4c/lib/libicui18n.62.dylib
Referenced from: /usr/local/bin/php
Reason: image not found
Abort trap: 6
提示不能加载/usr/local/opt/icu4c/lib/libicui18n.62.dylib
搜了半天的回答不过是卸载重新安装,但我卸载了node也不好使
所以我直接去看看为什么不能加载 cd /usr/local/opt/
ls -la查看icu4c指向居然是63.1
看来应该是icu4c的版本出了问题
cd ../Cellar/icu4c/63.1/lib/ 注:前半部分是软链接的指向,后面的/lib是报错信息的路径
果然是icu4c版本已经变成了63而不是62
1.尝试brew link icu4c 重新生成软链(但我没成功)
2.重新安装
brew uninstall --force icu4c
brew cleanup -s icu4c
brew install icu4c
(可以试试,反正我没成功)
3.执行brew cleanup 清除所有brew安装缓存,终于成功了
总结:此问题是已安装的应用软链链接到了旧版的里,但是brew install安装了最新版
友情提示,使用homebrew需要定期执行brew cleanup,因为homebrew不会自动删除旧版本的安装包