dyld: Library not loaded: /usr/local/opt/icu4c/lib/libicui18n.62.dylib

本文解决因ICU4C版本不匹配导致的应用加载失败问题,通过清理Homebrew缓存,更新ICU4C版本至正确版本,避免软链接指向旧版本导致的错误。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近需要使用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不会自动删除旧版本的安装包

 

apple@appledeMac-mini ~ % # 强制重新安装icu4c库 brew reinstall icu4c # 检查库文件路径是否生成 ls /opt/homebrew/opt/icu4c/lib/ zsh: command not found: # ==> Downloading https://ghcr.io/v2/homebrew/core/icu4c/77/manifests/77.1 ########################################################################################################################################################## 100.0% ==> Fetching icu4c@77 ==> Downloading https://ghcr.io/v2/homebrew/core/icu4c/77/blobs/sha256:19f6b5fef0cdf1dfc7f136ca103348ec8530ffdf8012273f6ee4a6159cdfaf75 ########################################################################################################################################################## 100.0% ==> Reinstalling icu4c@77 ==> Pouring icu4c@77--77.1.arm64_sequoia.bottle.tar.gz ==> Caveats icu4c@77 is keg-only, which means it was not symlinked into /opt/homebrew, because macOS provides libicucore.dylib (but nothing else). If you need to have icu4c@77 first in your PATH, run: echo 'export PATH="/opt/homebrew/opt/icu4c@77/bin:$PATH"' >> ~/.zshrc echo 'export PATH="/opt/homebrew/opt/icu4c@77/sbin:$PATH"' >> ~/.zshrc For compilers to find icu4c@77 you may need to set: export LDFLAGS="-L/opt/homebrew/opt/icu4c@77/lib" export CPPFLAGS="-I/opt/homebrew/opt/icu4c@77/include" For pkg-config to find icu4c@77 you may need to set: export PKG_CONFIG_PATH="/opt/homebrew/opt/icu4c@77/lib/pkgconfig" ==> Summary 🍺 /opt/homebrew/Cellar/icu4c@77/77.1: 277 files, 81.3MB ==> Running `brew cleanup icu4c@77`... Disable this behaviour by setting HOMEBREW_NO_INSTALL_CLEANUP. Hide these hints with HOMEBREW_NO_ENV_HINTS (see `man brew`). zsh: command not found: # icu libicui18n.77.1.dylib libicuio.77.dylib libicutest.a libicutu.dylib pkgconfig libicudata.77.1.dylib libicui18n.77.dylib libicuio.a libicutest.dylib libicuuc.77.1.dylib libicudata.77.dylib libicui18n.a libicuio.dylib libicutu.77.1.dylib libicuuc.77.dylib libicudata.a libicui18n.dylib libicutest.77.1.dylib libicutu.77.dylib l
最新发布
03-23
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值