0

我的 gems 依赖项有问题:Gemfile 的内容是

source :gemcutter
gem "sinatra"
gem "koala"
gem "json", "1.5.5"
gem "httparty"
gem "thin"
gem "rack", "1.3.10"

这个bundle install错误击中了我

$ sudo bundle install
The source :gemcutter is deprecated because HTTP requests are insecure.
Please change your source to 'https://rubygems.org' if possible, or 'http://rubygems.org' if not.
Fetching gem metadata from http://rubygems.org/.......
Fetching gem metadata from http://rubygems.org/..
Using addressable (2.2.7) 
Using crack (0.1.8) 
Using daemons (1.1.3) 
Installing eventmachine (0.12.10) 
Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension.

        /usr/bin/ruby1.9.1 extconf.rb 
/usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require': cannot load such file -- mkmf (LoadError)
    from /usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
    from extconf.rb:1:in `<main>'


Gem files will remain installed in /var/lib/gems/1.9.1/gems/eventmachine-0.12.10 for inspection.
Results logged to /var/lib/gems/1.9.1/gems/eventmachine-0.12.10/ext/gem_make.out

An error occurred while installing eventmachine (0.12.10), and Bundler cannot continue.
Make sure that `gem install eventmachine -v '0.12.10'` succeeds before bundling.

但是,我确实安装了 eventmachine!:

$ gem list

*** LOCAL GEMS ***

eventmachine (1.0.3, 1.0.0.rc.4, 0.12.10)

救救我,你是我唯一的希望!谢谢你。

4

1 回答 1

3

ruby 1.9.1 在 C 扩展上有一些问题。尝试检查您是否有mkmf

locate mkmf

或安装 ruby​​ 1.9.1 的开发版本:

sudo apt-get install ruby1.9.1-dev

我建议使用 RVM 安装 rubies:https ://rvm.io/

您也可以尝试更改 Gemfile 中的源

source 'https://rubygems.org'

而不是 :gemcutter

于 2013-03-14T09:47:58.447 回答