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还是有办法解决这个问题?
提前致谢。
这对我有用。 YMMV brew uninstall --purge macvim brew install macvim
[已修改]关于单独upgrade
选项,如果您还没有当前版本,则可能会有效。 --purge
强制删除并完成重新安装。 此外, build from source
选项build from source
,虽然它可能有效,但您现在拥有自己的mac-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]$
首先找到正确的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
试图使用brew upgrade macvim
引发错误并失败。 对我MacVim
在普通窗口(不是iTerm或终端)中打开MacVim
,图形版本注意到有更新版本可用并询问我是否要更新。 点击yes, please
完成。 终端或iTerm中的macvim
工作得很好(以及“窗口”版本)。
在我的案例中有什么帮助:
brew link --overwrite vim
在您的情况下,对MacVim使用相同的命令可能很有用
brew link --overwrite macvim