如何用ruby 1.9.2编译vim



我尝试用ruby支持重新编译vim,因为我注意到vim仍然使用1.8.7(这是雪豹上默认的ruby版本)。Ruby 1.9.2通过rvm安装。

使用

编译时
./configure --enable-rubyinterp --enable-gui=no --disable-nls --enable-cscope --prefix=/Users/madhatter

我从make中得到以下错误:

ld: library not found for -lruby.1.9.1
collect2: ld returned 1 exit status
make[1]: *** [vim] Error 1
make: *** [first] Error 2

然后我从googlecode克隆了实际的存储库,并试图构建它。make中没有错误,但是启动vim会导致以下错误:

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

我尝试的最后一件事是添加一些ruby信息到配置。可文件

RUBY            = /Users/madhatter/.rvm/rubies/ruby-1.9.2-p290/bin/ruby                            
RUBY_SRC        = if_ruby.c
RUBY_OBJ        = objects/if_ruby.o
RUBY_PRO        = if_ruby.pro
RUBY_CFLAGS     = -I/Users/madhatter/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1 -I/Users/madhatter/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/x86_64-darwin10.8.0 -DRUBY_VERSION=19
RUBY_LIBS       = -lruby.1.9.1 -lpthread -ldl -lobjc

还有其他可行的方法吗?

参见尝试在OS X上编译vim ?为了一个答案。基本上答案是,你现在不能没有修复Vim。

这是我使用的vim + python

./configure --with-features=BIG --enable-pythoninterp=yes --enable-multibyte=yes --enable-cscope=yes

看起来你错过了

--enable-rubyinterp=yes

最新更新