Mac High Sierra 上的 vim Ruby 不匹配



我最近将Mac升级到High Sierra

升级后,Macvim (mvim( 停止工作,因为(我假设(HighSierra 将 ruby 升级到 2.3,而 mvim 使用的是 ruby 2.0。

以下是我收到的错误

dyld:库未加载: /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/libruby.2.0.0.dylib

参考自: /usr/local/Cellar/macvim/8.0-134/MacVim.app/Contents/bin/../MacOS/Vim

我需要再次编译 vim 还是有什么办法可以解决这个问题?

提前谢谢。

这对

我有用。扬子晚报 brew uninstall --purge macvim brew install macvim

[修订] 关于单独upgrade选项,如果您还没有当前版本,这可能会起作用。--purge强制删除并完全重新安装。此外,build from source选项虽然可能有效,但您现在拥有自己的 mac-vim 静态快照,并且需要随着应用程序的发展手动维护它。除非您有非常具体的需求,否则我会避免从源代码构建。

首先找到正确的 libruby 路径在哪里,我的是:/System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/lib/libruby.2.3.0.dylib

版本已更改是很常见的。

找出 vim 的绝对路径在哪里:

$ which vim
vim: aliased to your-path-of-vim

更改 dyld:

sudo install_name_tool -change /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/libruby.2.0.0.dylib /System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/lib/libruby.2.3.0.dylib your-path-of-vim
➜  ~ vim
dyld: Library not loaded: /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/libruby.2.0.0.dylib
  Referenced from: /usr/local/bin/vim
  Reason: image not found

我尝试了brew卸载安装更新...都失败了。install_name_tool对我有用。

install_name_tool -change /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/libruby.2.0.0.dylib /System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/lib/libruby.2.3.0.dylib /usr/local/bin/vim

这对我有用:

$ brew update
$ brew upgrade macvim

实际命令输出:

[bin]$ brew upgrade macvim
==> Upgrading 1 outdated package, with result:
macvim 8.0-142
==> Upgrading macvim --with-override-system-vim
==> Downloading https://github.com/macvim-dev/macvim/archive/snapshot-142.tar.gz
==> Downloading from https://codeload.github.com/macvim-dev/macvim/tar.gz/snapshot-142
######################################################################## 100,0%
==> ./configure --with-features=huge --enable-multibyte --with-macarchs=x86_64 --enable-perlinterp --enable-rubyinterp --enable-tclinterp --enable-ter
==> make
🍺  /usr/local/Cellar/macvim/8.0-142: 2,147 files, 34.2MB, built in 3 minutes 15 seconds
[bin]$ 

对我有帮助的是:

brew link --overwrite vim

在您的情况下,对 MacVim 使用相同的命令可能会很有用

brew link --overwrite macvim

尝试使用brew upgrade macvim引发错误并失败。对我有用的是在普通窗口(不是 iTerm 或终端(中打开MacVim图形版本注意到有更新的版本可用并询问我是否要更新。单击yes, please并完成。 终端或iTerm中的macvim工作正常(以及"窗口"版本(。

最新更新