安装gem会导致错误

Jer*_*auw 15 ruby gem travis-ci

ruby 2.0.0p247(2013-06-27修订版41674)[x86_64-linux]

宝石2.0.3

sudo gem install travis
Building native extensions.  This could take a while...
ERROR:  Error installing travis:
        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:4:in `<main>'


Gem files will remain installed in /var/lib/gems/1.9.1/gems/ffi-1.9.0 for inspection.
Results logged to /var/lib/gems/1.9.1/gems/ffi-1.9.0/ext/ffi_c/gem_make.out
Run Code Online (Sandbox Code Playgroud)

在尝试安装其他宝石时也会遇到这种情况.我不是Ruby用户,谷歌搜索错误并没有让我得到任何有效的解决方案.

我使用RVM安装了Ruby 2.0:"curl -L https://get.rvm.io | bash -s stable --ruby".

如果我做"sudo ruby​​ -v"我得到"ruby 1.9.3p194(2012-04-20 revision 35410)[x86_64-linux]".

Iva*_*rea 23

看起来您正在使用通过系统安装的Ruby 1.9.1.为了解决该错误,您应该安装该ruby-dev软件包.

在Debian/Ubuntu中,

sudo apt-get install ruby1.9.1-dev.

由于gem使用原生扩展,您还应该执行

sudo apt-get install build-essentials

在那之前.

但是,我强烈建议使用RVM并使用RVM ruby​​,因为它会为您的系统提取所有大部分dev依赖项,并且您不经常遇到本机扩展问题.

  • 安装ruby1.9.1-dev修复了我的问题. (2认同)