Ruby on rails - 捆绑安装期间出错

时间:2014-10-28 17:21:07

标签: ruby-on-rails ruby ruby-on-rails-3

我一直在谷歌搜索下面这个错误,但我无法解决这个错误:

Gem::Ext::BuildError: ERROR: Failed to build gem native extension.

    /usr/bin/ruby2.1 extconf.rb 
mkmf.rb can't find header files for ruby at /usr/lib/ruby/include/ruby.h

extconf failed, exit code 1

Gem files will remain installed in /home/dyego/.bundler/tmp/9200/gems/sqlite3-1.3.9 for inspection.
Results logged to /home/dyego/.bundler/tmp/9200/extensions/x86_64-linux/2.1.0/sqlite3-1.3.9/gem_make.out
An error occurred while installing sqlite3 (1.3.9), and Bundler cannot continue.
Make sure that `gem install sqlite3 -v '1.3.9'` succeeds before bundling.
         run  bundle exec spring binstub --all
/usr/lib/ruby/vendor_ruby/bundler/resolver.rb:296:in `resolve': Could not find gem 'sqlite3 (>= 0) ruby' in the gems available on this machine. (Bundler::GemNotFound)
    from /usr/lib/ruby/vendor_ruby/bundler/resolver.rb:168:in `start'
    from /usr/lib/ruby/vendor_ruby/bundler/resolver.rb:129:in `block in resolve'
    from /usr/lib/ruby/vendor_ruby/bundler/resolver.rb:128:in `catch'
    from /usr/lib/ruby/vendor_ruby/bundler/resolver.rb:128:in `resolve'
    from /usr/lib/ruby/vendor_ruby/bundler/definition.rb:179:in `resolve'
    from /usr/lib/ruby/vendor_ruby/bundler/definition.rb:114:in `specs'
    from /usr/lib/ruby/vendor_ruby/bundler/definition.rb:159:in `specs_for'
    from /usr/lib/ruby/vendor_ruby/bundler/definition.rb:148:in `requested_specs'
    from /usr/lib/ruby/vendor_ruby/bundler/environment.rb:18:in `requested_specs'
    from /usr/lib/ruby/vendor_ruby/bundler/runtime.rb:13:in `setup'
    from /usr/lib/ruby/vendor_ruby/bundler.rb:120:in `setup'
    from /usr/lib/ruby/vendor_ruby/bundler/setup.rb:17:in `<top (required)>'
    from /usr/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'
    from /usr/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'

所以我用Google搜索了这个错误:

  

mkmf.rb在/usr/lib/ruby/include/ruby.h找不到ruby的头文件

我得到了类似这样的问题: Error while installing json gem 'mkmf.rb can't find header files for ruby'

但我已经安装了ruby-dev:

sudo apt-get install ruby-dev
Reading package lists... Done
Building dependency tree       
Reading state information... Done
ruby-dev is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 72 not upgraded.

我真的很难解决这个问题(即使它看起来很简单)。

2 个答案:

答案 0 :(得分:39)

尝试为您的Ruby版本安装ruby-dev 2.1

$ sudo apt-get install ruby2.1-dev

答案 1 :(得分:3)

在尝试为SASS开发安装指南针时,在fedora上有类似的错误

gem install compass

失败

构建原生扩展。这可能需要一段时间...... 错误:安装指南针时出错: 错误:无法构建gem原生扩展。

/ usr / bin / ruby​​ extconf.rb mkmf.rb无法在/usr/share/include/ruby.h找到ruby的头文件

跑吧

yum -y install gcc ruby-devel rubygems 

然后能够成功再次运行安装。