我使用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。


当前回答

在openSUSE:

zypper in ruby-devel

对我有用:)

其他回答

对于那些可能对公认的答案感到困惑的人,就像我一样,您还需要安装ruby头文件[ruby-devel]。

救了我一命的文章就在这里。

这是修改后的解决方案(注意我使用的是Fedora 13):

yum -y install gcc mysql-devel ruby-devel rubygems
gem install -y mysql -- --with-mysql-config=/usr/bin/mysql_config

对于Debian和其他使用Debian风格打包的发行版,ruby开发头文件通过以下方式安装:

sudo apt-get install ruby-dev

对于Ubuntu, ruby开发头文件是通过以下方式安装的:

sudo apt-get install ruby-all-dev

如果你使用的是ruby的早期版本(比如2.2),那么你需要运行:

sudo apt-get install ruby2.2-dev

(其中2.2是你想要的Ruby版本)

我在这里找到了答案。

# yum install mysql-devel gcc make
# gem install mysql -- --with-mysql-config=/usr/bin/mysql_config

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

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

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

在我成功地跑起来之前

sudo gem install jekyll

这招对我很管用:

yum -y install gcc mysql-devel ruby-devel rubygems

看来

yum install ruby-devel

够我表演了吗

gem install datamapper

之后。

你可能需要安装另一个包:

yum install gcc gcc-c++

能够构建本地扩展