0

我试图安装ruby​​-llvm

我可以用 llvm 安装brew install llvm -shared,也可以ruby-llvmsudo gem install ruby-llvm命令安装。

但是,当我尝试运行示例时,我收到了这些错误消息。

/Users/smcho/.rvm/gems/ruby-1.9.3-p194/gems/ffi-1.1.5/lib/ffi/library.rb:121:in `block in ffi_lib': 
Could not open library '/DIR/.rvm/gems/ruby-1.9.3-p194/gems/ruby-llvm-3.0.0/lib/libRubyLLVMSupport-3.0.0.dylib': 
dlopen(/DIR/.rvm/gems/ruby-1.9.3-p194/gems/ruby-llvm-3.0.0/lib/libRubyLLVMSupport-3.0.0.dylib, 5): no suitable image found.  Did find: (LoadError)
/DIR/.rvm/gems/ruby-1.9.3-p194/gems/ruby-llvm-3.0.0/lib/libRubyLLVMSupport-3.0.0.dylib: mach-o, but wrong architecture

我检查了动态库是64位的。

file /DIR/.rvm/gems/ruby-1.9.3-p194/gems/ruby-llvm-3.0.0/lib/libRubyLLVMSupport-3.0.0.dylib 
libRubyLLVMSupport-3.0.0.dylib: Mach-O 64-bit dynamically linked shared library x86_64

似乎 ruby​​ 正在 32 位模式下运行。ruby 1.9.3p194 (2012-04-20 revision 35410) [i386-darwin11.4.0].

我该如何解决这个问题?有没有办法下载32位版本ruby-llvm或64位版本的ruby

4

1 回答 1

1

看来您已经以 32 位模式安装了 ruby​​。在 64 位模式下安装 ruby​​ 会解决问题吗?

要强制使用 64 位,您可以使用最新版本的 RVM 尝试以下操作:

$ rvm install 1.9.3 --64

或 $ rvm install 1.9.3 --with-arch=x86_64

(来自:http ://www.engineyard.com/blog/2012/rvm-stable-and-more/ )

为了在 OS X 上编译 32 位模式 ruby​​,我们有 --32、--64 和 --universal 标志:

$ rvm install 1.9.3 --universal # to build fat binary including both 32 and 64 bit binaries
$ rvm install 1.8.7 --32 # to build only 32 bit ruby
$ rvm install 1.8.7 --with-arch=i386 # is equivalent to the 32 bit one, but is available only via RVM, ruby 1.8.7 sources do not support it.
于 2012-09-05T11:55:31.613 回答