Pertanyaan Mencoba mengkompilasi vim di OS X?


Berikut Langgan ini...

Biner yang dikompilasi tampaknya berfungsi dengan baik, tetapi biner yang diinstal gagal (ketika berjalan make install).

Tampaknya gagal pada langkah ini:

...
generating help tags
/usr/local/bin/vim -u NONE -esX -c "helptags ++t ." -c quit
dyld: Symbol not found: _environ
  Referenced from: /Users/neezer/.rvm/rubies/ruby-1.9.2-p0/lib/libruby.1.9.1.dylib
  Expected in: flat namespace
 in /Users/neezer/.rvm/rubies/ruby-1.9.2-p0/lib/libruby.1.9.1.dylib
make[2]: *** [vimtags] Trace/BPT trap
make[1]: [installrtbase] Error 2 (ignored)

Saya menggunakan ini untuk mengkonfigurasi:

./configure --prefix=/usr/local --enable-rubyinterp --enable-gui=no --disable-gpm

Seperti saya katakan, saya pikir itu dikompilasi dengan benar, karena saya bisa berlari ./src/vim setelah make baik-baik saja (tidak ada kesalahan). Tetapi ketika saya mencoba untuk menjalankan versi yang terinstal setelahnya make install di /usr/local/bin/vim, Saya mendapatkan ini (cermin di atas):

dyld: Symbol not found: _environ
  Referenced from: /Users/neezer/.rvm/rubies/ruby-1.9.2-p0/lib/libruby.1.9.1.dylib
  Expected in: flat namespace
 in /Users/neezer/.rvm/rubies/ruby-1.9.2-p0/lib/libruby.1.9.1.dylib
[1]    13175 trace trap  vim

Lari which vim memverifikasi bahwa ia mencoba memuat biner baru di /usr/local/bin/vim.

Versi Ruby saya saat ini ruby 1.9.2p0 (2010-08-18 revision 29036) [x86_64-darwin10.5.0] melalui RVM.

Apa yang sedang terjadi disini?

Dan tidak: Saya tidak ingin hanya menggunakan MacVim sebagai gantinya ...


5
2018-05-24 17:25


asal


Jawaban:


Mengatakan dengan benar di pos blog:

Anda mungkin telah menjadi mangsa masalah (yang saat ini) tidak terdokumentasi dengan baik: Vim 7.2 tidak mendukung integrasi Ruby 1.9.x di Snow Leopard.

Ada lebih banyak informasi tersedia di tiket ini.

Namun dalam ringkasan, Anda harus menautkan dengan Ruby 1.8.7, yang merupakan versi yang dikirimkan dengan Snow Leopard.


7
2018-05-24 17:44



Vim tidak dapat dikompilasi dengan Ruby 1.9.X (dapat diperbaiki di masa mendatang). Anda harus meng-compile-nya dengan Ruby 1.8.X, jika Anda ingin menggunakan integrasi ruby.

Jika Anda menggunakan rbenv bukan rvm, Anda dapat mengubah ke ruby ​​1.8.7 atau menonaktifkan rbenv di file .zshenv atau .bash_profile Anda, mengkompilasi ulang vim dan mengaktifkan ruby ​​Anda saat ini lagi. Ini juga berfungsi untuk OSX 10.6. Saya sudah menguji solusi ini di OSX 10.7 dan 10.8 saja.

Untuk zsh dan rbenv:

# disable in your .zshenv for compile time. Just comment it out for comile time.
# eval "$(rbenv init -)"

Untuk bash dan rbenv:

# disable in .bash_profile or .bashrc for compile time. Just comment it out for comile time.
# eval "$(rbenv init -)"

Untuk rvm, Anda dapat beralih ke ruby ​​sistem (osx), mengkompilasi ulang, dan beralih kembali

rvm use system
brew uninstall vim
brew install vim
rvm use 1.9.3

7
2017-10-22 11:52



Saya akan merekomendasikan menggunakan MacPorts; kompilasi vim kemudian menjadi:

$ sudo port install vim

EDIT: Koreksi; Anda akan membutuhkan mode ruby:

$ sudo port install vim +ruby

MacPorts kemudian akan mengambil semua dependensi dan mengurutkan semua masalah itu sendiri.


0
2018-05-24 17:39