2012-12-05 73 views
1

我想在Debian 6上做一個gem install therubyracer。我在1.9.3上使用rbenv。當我最初做它時,它抱怨libv8,所以我做了一個gem install libv8。現在,當我運行gem install therubyracer時,出現以下錯誤,說它無法找到該文件。它正在討論的文件/home/chop/.rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/libv8-3.11.8.3-x86_64-linux/vendor/v8/out/然而,x64.release/obj.target/tools/gyp/libv8_base.a確實存在。無法安裝therubyracer

[email protected]:~$ gem install therubyracer 
Building native extensions. This could take a while... 
ERROR: Error installing therubyracer: 
    ERROR: Failed to build gem native extension. 

     /home/chop/.rbenv/versions/1.9.3-p327/bin/ruby extconf.rb 
checking for main() in -lpthread... yes 
creating Makefile 

make 
compiling stack.cc 
compiling accessor.cc 
compiling constants.cc 
compiling heap.cc 
compiling init.cc 
compiling primitive.cc 
compiling signature.cc 
compiling date.cc 
compiling locker.cc 
compiling exception.cc 
compiling gc.cc 
compiling script.cc 
compiling external.cc 
compiling v8.cc 
compiling object.cc 
compiling trycatch.cc 
compiling context.cc 
compiling string.cc 
compiling value.cc 
compiling array.cc 
compiling invocation.cc 
compiling message.cc 
compiling constraints.cc 
compiling function.cc 
compiling backref.cc 
compiling handles.cc 
compiling template.cc 
compiling rr.cc 
linking shared-object v8/init.so 
/home/chop/.rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/libv8-3.11.8.3-x86_64-linux/vendor/v8/out/x64.release/obj.target/tools/gyp/libv8_base.a: could not read symbols: No such file or directory 
collect2: ld returned 1 exit status 
make: *** [init.so] Error 1 


Gem files will remain installed in /home/chop/.rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/therubyracer-0.11.0 for inspection. 
Results logged to /home/chop/.rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/therubyracer-0.11.0/ext/v8/gem_make.out 
+0

哎,好運氣。我見過therubyracer無法在多個版本的Linux和Mac OS上構建,並且尚未成功構建! =( – maerics

回答

13

我只是碰到了完全相同的錯誤。我查看了https://rubygems.org/gems/therubyracer的寶石詳情,看起來我們在發佈當天足夠「幸運」地捆綁了一個新版本。

這似乎已經報道:https://github.com/cowboyd/therubyracer/issues/215

所以,我想最簡單的辦法就是用寶石的最後一個版本。所以我更新了我的Gemfile以指向最後一個版本,如下所示:

gem "therubyracer", "~> 0.10.2" 

我能夠成功安裝gem。

如果你想手動安裝的寶石,你可以使用:

gem install therubyracer --version "~> 0.10.2" 
+0

謝謝!爲我工作 –

+0

謝謝,爲我工作! –

+0

在Mac OSX 10.6.8上,這對我有效:gem'node','〜> 0.0.2'gem「therubyracer」,「〜> 0.10 .2「gem」less-rails「gem'twitter-bootstrap-rails' – Livi17