bcrypt ruby赢得';不能使用bundler安装,但可以使用gem安装

bcrypt ruby赢得';不能使用bundler安装,但可以使用gem安装,ruby,rubygems,bundler,bcrypt,Ruby,Rubygems,Bundler,Bcrypt,我最近刚开始在bundler上遇到问题-在执行bundle安装或sudo bundle安装时,bcrypt ruby将不会安装,并在退出时出现以下错误: Installing bcrypt-ruby (2.1.4) with native extensions Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension. /usr/bin/ruby1.8 extconf.rb Gem fi

我最近刚开始在bundler上遇到问题-在执行bundle安装或sudo bundle安装时,bcrypt ruby将不会安装,并在退出时出现以下错误:

Installing bcrypt-ruby (2.1.4) with native extensions 
Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension.
/usr/bin/ruby1.8 extconf.rb 

Gem files will remain installed in /home/deploy/vendor/bundle/ruby/1.8/gems/bcrypt-ruby-2.1.4 for inspection.
Results logged to /home/deploy/vendor/bundle/ruby/1.8/gems/bcrypt-ruby-2.1.4/ext/mri/gem_make.out
An error occured while installing bcrypt-ruby (2.1.4), and Bundler cannot continue.
Make sure that `gem install bcrypt-ruby -v '2.1.4'` succeeds before bundling.
然而,
gem install bcrypt ruby-v'2.1.4'
运行得很好(实际上已经在这个盒子上运行过了)。手动运行
/usr/bin/ruby1.8 extconf.rb
工作正常,生成的Makefile也使用make just fine运行

我在Ubuntu 10.04.1 LTS上使用Ruby 1.8.7和bundler 1.0.21。其他宝石似乎通过bundler工作良好。虽然这可能很明显,但我已经确认安装了ruby dev、gcc等包。我尝试过在bundler中使用--deployment选项,但没有不同的行为。最近我能想到的唯一变化是我在几天前更新了一个bundle,所以bundle的版本发生了一个小的变化(1.0.10->1.0.21),而bcrypt的版本似乎发生了一个大的变化(2.1.4->3.0.1)


感谢您的帮助

自从安装Ruby 1.9.2以来,您是否升级到了Lion?如果是这样,则可能与错误的gcc关联

尝试卸载并重新安装1.9.2,我建议使用

如果这不起作用,你可能不得不内爆rvm

rvm implode

bash -s stable < <(curl -s https://raw.github.com/wayneeseguin/rvm/master/binscripts/rvm-installer)

source ~/.bash_profile

rvm install 1.9.2
rvm内爆
bash-s稳定<尝试:


作为夫妇添加数据点,我似乎已经解决了这个问题(虽然我不认为这是一个解决方案):我指定了旧版本的BCRIPT Ruby(2.1.4)在我的GEMFILE文件,我也做了捆绑-部署(在Mac OS X 10.7安装-开发箱),然后在我的Ubuntu测试框,它“工作”。我怀疑我的bcrypt 3.0.1仍然存在问题,我不确定为什么——考虑到本机扩展的明显问题,部署会有所帮助,因此跨架构执行此操作可能没有真正的帮助。在lion升级后重新安装ruby为我解决了这个问题
rvm implode

bash -s stable < <(curl -s https://raw.github.com/wayneeseguin/rvm/master/binscripts/rvm-installer)

source ~/.bash_profile

rvm install 1.9.2
sudo apt-get install build-essential