簡體   English   中英

Mac High Sierra上的vim ruby​​不匹配

[英]vim ruby mismatch on Mac High Sierra

我最近將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

首先找到正確的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 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 upgrade macvim引發錯誤並失敗。 對我MacVim在普通窗口(不是iTerm或終端)中打開MacVim ,圖形版本注意到有更新的版本可用,並詢問我是否要更新。 點擊yes, please完成。 終端或iTerm中的macvim工作正常(以及“窗口”版本)。

在我的案例中有什么幫助:

brew link --overwrite vim

在您的情況下,對MacVim使用相同的命令可能很有用

brew link --overwrite macvim

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM