libv8和rails的bundle install问题

out*_*344 5 ruby gem ruby-on-rails bundler

我在libv8使用ruby 1.9.3p0(2011-10-30修订版33570)[x86_64-darwin10.8.0]时遇到了宝石问题.宝石安装libv8工作正常,我有

gem 'therubyracer'
Run Code Online (Sandbox Code Playgroud)

在我Gemfile和我有一个依赖关系,libv8当我这样做时安装bundle install:

$ bundle exec gem list

*** LOCAL GEMS ***

actionmailer (3.1.3)
actionpack (3.1.3)
...
libv8 (3.3.10.4 x86_64-darwin-10)
...

但是当我跑步时:

$ rails s
Could not find libv8-3.3.10.4 in any of the sources
Run `bundle install` to install missing gems.

它找不到libv8- 这是32/64位问题吗?如果是这样,我该如何解决?

out*_*344 1

我怀疑这是因为我的 32/64 位不匹配。

我用以下方法解决了这个问题:

$ IRB
ruby-1.9.3-p0 :001 > `gem 列表`.each_line {|line| `sudo env ARCHFLAGS="-arch x86_64" gem install #{line.split.first}`

  • 如果您将 gems 打包到供应商/缓存中,那么在部署时,您将根据您的开发环境架构(例如 32 位或 OSX)打包 gems。如果您随后使用打包的 gem 部署到生产环境,则可能需要额外的版本。 (2认同)