gem install:无法构建gem本机扩展(找不到头文件)

我正在使用Fedora 14,并且已安装并正在运行MySQL和MySQL服务器5.1.42。现在,我尝试以root用户身份执行此操作:


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。


HUH函数
浏览 864回答 4
4回答

慕标5832272

对于那些可能对接受的答案感到困惑的人,就像我一样,您还需要安装ruby标头[ ruby-devel ]。保存我的皮革的文章在这里。这是经过修订的解决方案(请注意,我使用的是Fedora 13):yum -y install gcc mysql-devel ruby-devel rubygemsgem 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版本)

慕虎7371278

红帽,Fedora:yum -y install gcc mysql-devel ruby-devel rubygemsgem install -y mysql -- --with-mysql-config=/usr/bin/mysql_configDebian,Ubuntu:apt-get install libmysqlclient-dev ruby-devgem install mysqlArch Linux:pacman -S libmariadbclientgem install mysql对于2015年阅读此书的任何人:如果您偶然安装了软件包ruby2.0,则需要安装匹配项ruby2.0-dev以获取适当的Ruby标头。这同样适用于ruby2.1和ruby2.2等。例如:$ sudo apt-get install ruby2.2-dev

宝慕林4294392

对于2015年阅读此书的任何人:如果您偶然安装了软件包ruby2.0,则需要安装匹配项ruby2.0-dev以获取适当的Ruby标头。这同样适用于ruby2.1和ruby2.2等。例如:$ sudo apt-get install ruby2.2-dev

神不在的星期二

这篇文章对我有帮助。非常感谢。在Linux(Ubuntu 12.10)上,我需要运行sudo apt-get install rubysudo apt-get install rubygemssudo apt-get install ruby-dev在我成功跑步之前sudo gem install jekyll
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

MySQL
Ruby