安装libv8(3.16.14.7)时发生错误,Bundler无法继续

时间:2015-01-10 10:17:14

标签: rvm bundler libv8

我在这里遇到循环错误:

Bundler::GemspecError: Could not read gem at /path/to/website/vendor/cache/ruby/2.1.0/cache/libv8-3.16.14.7-x86_64-darwin-14.gem. It may be corrupted.
An error occurred while installing libv8 (3.16.14.7), and Bundler cannot continue.
Make sure that `gem install libv8 -v '3.16.14.7'` succeeds before bundling.

$ gem install libv8 -v '3.16.14.7'

Successfully installed libv8-3.16.14.7-x86_64-darwin-14
/Users/snowcrash/.rvm/gems/ruby-2.1.5/gems/rdoc-4.0.1/lib/rdoc/markdown.rb:15931: warning: encountered \r in middle of line, treated as a mere space
Parsing documentation for libv8-3.16.14.7-x86_64-darwin-14
Done installing documentation for libv8 after 0 seconds
1 gem installed

$ bundle install --path vendor/cache
... many lines here ...
Using koala (1.10.1) 

Bundler::GemspecError: Could not read gem at /path/to/website/vendor/cache/ruby/2.1.0/cache/libv8-3.16.14.7-x86_64-darwin-14.gem. It may be corrupted.
An error occurred while installing libv8 (3.16.14.7), and Bundler cannot continue.
Make sure that `gem install libv8 -v '3.16.14.7'` succeeds before bundling.

有什么建议吗?

====更新

我尝试使用rm -rf ~/.rvm/gems/ruby-2.1.5/cache/删除所有缓存数据,现在bundle install --path vendor/cache给了我:

Bundler::GemspecError: Could not read gem at /path/to/website/vendor/cache/ruby/2.1.0/cache/libv8-3.16.14.7-x86_64-darwin-14.gem. It may be corrupted.
An error occurred while installing libv8 (3.16.14.7), and Bundler cannot continue.
Make sure that `gem install libv8 -v '3.16.14.7'` succeeds before bundling.

5 个答案:

答案 0 :(得分:19)

对于MacOS Catalina和Big Sur:

brew install v8@3.15
bundle config build.libv8 --with-system-v8
bundle config build.therubyracer --with-v8-dir=$(brew --prefix v8@3.15)
bundle

(根据需要更新版本号)

答案 1 :(得分:9)

通常,解决方法是将libv8更新为最新版本:

bundle update libv8

答案 2 :(得分:4)

运行以下bundle config命令,然后再次运行bundle

bundle config build.libv8 --with-system-v8

答案 3 :(得分:3)

运行以下命令,然后再次运行bundle install。 在运行以下命令之前,请确保根据错误显示编辑路径。

rm /home/ajeet/.rvm/gems/ruby-2.1.2/cache/libv8-3.16.14.7-x86_64-linux.gem

答案 4 :(得分:0)

面对同样的问题,请使用对我有用的系统偏好设置来安装gem

gem install libv8 -v'3.16.14.7'---with-system-v8