总结

总结

brew update && brew upgrade我好久没有跑步了。

我刚刚进行了一次大规模升级,结果却损坏了我的 Vim。

这是我运行后得到的结果vim

dyld: Library not loaded: /usr/local/opt/ruby/lib/libruby.2.3.0.dylib
  Referenced from: /usr/local/bin/vim
  Reason: image not found
Trace/BPT trap: 5

我访问过一些网站,但它们实际上都没有帮助。

他们说这可能与此有关,rvmbrew uninstall vim; rvm system; brew install vim没有帮助。我也尝试重新安装我的 MacVim,但没有解决问题。

添加export PATH="/usr/local/bin:$PATH"对我来说.bash_profile也没有帮助。

以下是供将来参考的列表:

我的 Vim 出了什么问题?我该如何修复它?

答案1

解决方案

尝试重新安装,ruby例如vim

brew reinstall ruby vim

故障排除

如果以上建议没有帮助的话,这里还有其他建议:

  • DYLD_LIBRARY_PATH查找对、DYLD_FALLBACK_LIBRARY_PATH或环境变量的任何引用DYLD_FRAMEWORK_PATH,并将其从启动 shell 脚本中删除(例如~/.bashrc~/.bash_profile等)。

答案2

总结

brew link --overwrite ruby

细节

事实上,这很简单。我跟着建议运行brew doctor并得到以下结果:

Warning: You have unlinked kegs in your Cellar
Leaving kegs unlinked can lead to build-trouble and cause brews that depend on
those kegs to fail to run properly once built. Run `brew link` on these:
    ruby

于是我运行了brew link ruby。结果如下:

Linking /usr/local/Cellar/ruby/2.3.1... v
Error: Could not symlink bin/rake
Target /usr/local/bin/rake
already exists. You may want to remove it:
  rm '/usr/local/bin/rake'

结果我决定运行brew link --overwrite ruby,现在我的 Vim 又可以工作了!

答案3

brew upgrade我在执行libperl 未加载 时遇到了类似的错误。

dyld: Library not loaded: /usr/local/opt/perl/lib/perl5/5.24.1/darwin-thread-multi-2level/CORE/libperl.dylib
  Referenced from: /usr/local/Cellar/vim/8.0.0636/bin/vim
  Reason: image not found

修复方法是重新安装损坏的依赖项和 vim:

brew uninstall --ignore-dependencies perl
brew uninstall vim
brew install vim

答案4

我尝试重新安装、重新链接、删除 ruby​​ 和 vim 的所有可用版本等,但没有任何帮助。

因此,我决定将我的 dylib 文件从

/usr/local/opt/ruby/lib/libruby.2.3.dylib

/usr/local/opt/ruby/lib/libruby.2.3.0.dylib

重命名后的结果是它现在运行良好。

相关内容