我使用Fedora 14和MySQL和MySQL服务器5.1.42安装和运行。 现在我试着以根用户的身份做这个:

gem install mysql

但是我得到了这个错误:

Building native extensions.  This could take a while...
ERROR:  Error installing mysql:
    ERROR: Failed to build gem native extension.

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


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

这里出了什么问题?在安装的ruby 1.8.7。以及最新的rubygems 1.3.7。


当前回答

对于2015年读这篇文章的人:如果你碰巧安装了ruby2.0包,你需要安装匹配的ruby2.0-dev来获得合适的Ruby头文件。对于ruby2.1和ruby2.2也是如此。例如:

$ sudo apt-get install ruby2.2-dev

其他回答

对于2015年读这篇文章的人:如果你碰巧安装了ruby2.0包,你需要安装匹配的ruby2.0-dev来获得合适的Ruby头文件。对于ruby2.1和ruby2.2也是如此。例如:

$ sudo apt-get install ruby2.2-dev

在openSUSE:

zypper in ruby-devel

对我有用:)

这篇文章帮助了我。非常感谢。

我需要在Linux (Ubuntu 12.10)上运行

sudo apt-get install ruby
sudo apt-get install rubygems
sudo apt-get install ruby-dev

在我成功地跑起来之前

sudo gem install jekyll

只需要在path中添加ruby.h文件的路径 例如:

export PATH=$PATH:/usr/src/ruby-xxxxxx

必须安装redhat-rpm-config。我想它能解决你的问题!