dyld: 在VSCode终端中,库未加载:/usr/local/opt/icu4c/lib/libicui18n.63.dylib

44

对于我的情况,只有在通过VS Code访问终端(zsh)时才会出现错误。

打开VS Code终端或运行node命令时,我会收到这个错误:

dyld: Library not loaded: /usr/local/opt/icu4c/lib/libicui18n.63.dylib
  Referenced from: /usr/local/bin/node
  Reason: image not found
[1]    4506 abort      node

然而,通过iTerm运行时它可以正常运行。尝试运行brew updatebrew upgrade以及其他一些建议的答案。

我有什么遗漏吗?


新安装的VS Code和新的MacBook - 相同的问题。macOS Mojave和VS 1.31.0。 - Jason
[2020年答案] 这是相关问题的答案: https://dev59.com/EVQJ5IYBdhLWcg3wdVkW#63955091 - mialdi98
2年6个月后,我再次遇到了这个问题,很高兴@Jason的答案(https://dev59.com/KlQJ5IYBdhLWcg3wFx1_#54662431)再次帮助我解决了这个问题。 - jaanhio
又是同样的问题。我已经迁移到了Apple M1,但有些文件夹似乎出现了混乱。这个答案帮助我解决了这个问题。rm -rf /usr/local/bin/npm && rm -rf /usr/local/bin/node - Vitalii Kyrychenko
5个回答

44

借鉴Jason的解答,另一个选择是直接运行

brew upgrade node

2
工作!10.14.6 macOS - falselight
我遇到了这个错误,但是这个答案仍然对我有用(尽管出现了错误信息)Error: No such file or directory - /usr/local/Cellar/yarn/1.12.3 - stevec
是的!谢谢你!我已经运行了brew upgradebrew cleanup(或者其他什么命令),当时非常慌张! - Liz

34

找到答案 这里

运行此命令

brew uninstall node icu4c
brew install node

3
在这里找到答案,谢谢!brew uninstall --ignore-dependencies node icu4c 避免了与几个相关依赖项(包括postgresql)的问题。 - SexxLuthor
我在从Mojave升级到Monterey后遇到了这个问题(尽管它是/usr/local/opt/icu4c/lib/libicui18n.70.dylib)。除了这里的答案,我还有一个不好的Node安装程序,必须rm -rf /usr/local/Cellar/node\@12然后brew install node,现在一切都恢复正常了。 - Nathaniel Heinrichs

22

您可以按照以下步骤进行。

> which node
/usr/local/bin/node
> rm /usr/local/bin/node
> brew unlink node
> brew link --overwrite node

这应该可以解决问题。


1
这是唯一有效的答案(……像魔法一样)! - david
1
对于我来说,我运行了这些步骤,但之后仍然出现了相同的错误。所以我也执行了 brew uninstall node 然后 brew install node,然后一切都恢复正常了。 - Doomd
1
按照这些步骤后问题仍未解决。 brew upgrade node 帮助了我。(macOS Big Sur) - blackchestnut
谢谢Rakesh。这正是我需要解决这个问题的东西。 - Ben Coffin

11

brew reinstall icu4c 可以解决 macOS 10.15.6 上的问题。

在启动有问题的软件包(如 node、pg 等)时,观察日志也很有帮助(对于 pg 是 tail -f /usr/local/var/log/postgresql@11.log,而不是服务器日志)。


是的!这对我有用。 - Shai Alon
搞定了。你救了我的一天! - shalama
我在升级到Mac OS 13.2.1后需要这样做。brew upgrade node对我来说不起作用。 - kuzzooroo

0

我不得不使用苹果硅下载链接这里重新安装VSCode。如果我从命令行安装它,它会继续使用旧的/usr/bin文件夹,而不是新的M1 brew文件夹/opt/homebrew


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接