49

我在 Ubuntu 11 上安装 Rails 时遇到了这个问题:

root@salah:/home/salah/rubygems-1.8.15# sudo gem install mysql

Fetching: mysql-2.8.1.gem (100%)
Building native extensions.  This could take a while...
ERROR:  Error installing mysql:
    ERROR: Failed to build gem native extension.

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


Gem files will remain installed in /usr/lib/ruby/gems/1.9.1/gems/mysql-2.8.1 for inspection.
Results logged to /usr/lib/ruby/gems/1.9.1/gems/mysql-2.8.1/ext/mysql_api/gem_make.out
4

3 回答 3

75

如果我没记错的话,mkmf 是 ruby​​-dev 包的一部分。尝试:

sudo aptitude install ruby1.9.1-dev

当然,您最好通过 RVM 安装 ruby​​ :)

于 2012-10-04T17:18:31.070 回答
66

对于 ubuntu 13.04,这对我有用:

sudo apt-get install ruby-dev
于 2013-08-13T14:51:49.783 回答
-1

尝试 rvm all do gem install nokogiri

于 2012-12-08T21:26:51.153 回答