当前位置: 首页 > 面试题库 >

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

子车征
2023-03-14
问题内容

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


问题答案:

对于那些可能对接受的答案感到困惑的人,就像我一样,您还需要安装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版本)



 类似资料:
  • 我正在尝试基于ruby: 3.0构建Docker映像。在Dockerfile中,运行“RUN bundle install”时,开始安装依赖项,直到显示错误: Gem::Ext::BuildError:错误:未能生成Gem本机扩展#10 34.20 34.20当前目录:/usr/local/bundle/gems/tiny_tds-2.1.5/ext/tiny-tds#10 34.2/usr/lo

  • 问题内容: 我正在尝试将MySQL安装到最新版本,这是因为某些安装错误。我运行命令,并且收到以下信息: 构建本机扩展。这可能需要一段时间…错误:安装mysql时出错:错误:无法生成gem本机扩展。 /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby extconf.rb extconf.rb:4:警告:PATH模式

  • 问题内容: 操作系统:Mac OS X 10.10.3 XCode:最新安装了命令行工具(6.3版)Rails:4.2.1版Ruby:2.2.1版 当我收到一条错误消息时,我试图为正在处理的项目生成路由(定期执行此操作),并建议我捆绑安装并捆绑执行。我这样做了,这一次,编译JSON Gem(版本1.7.7)的过程中断了。 对StackOverflow进行了一些研究,建议是更新Xcode的命令行工具

  • 我正在尝试将rails应用程序部署到我的ubuntu linux服务器上。我正在使用capistrano和bundler,当安装gems时,它会失败,并出现以下错误: 我运行的是ruby enterprise edition 1.8.7,如果不升级其他网站,我就无法升级ruby,所以现在这不是一个选项。我尝试安装ruby dev,但没有任何帮助(我不确定这是不是正确的事情)。

  • 问题内容: 我正在尝试使用Rails 3.2.3安装mysql2 gem,但失败了: 我正在运行捆绑安装,这在我的Gemfile中: 我目前已经通过MAMP运行MySQL。我不确定这是否是个坏主意,我应该运行香草MySQl,但似乎我当前的问题只是安装gem。我在stackoverflow上已经看到了很多这样的问题,但是似乎都有些不同或解决方案非常复杂。有什么我想念的吗?简单吗?有点蠢吗?如果需要,

  • 问题内容: 尝试为Rails 安装gem 时遇到一些问题。当我尝试通过运行安装它时,或者出现以下错误: 安装mysql2时出错:错误:无法构建gem本机扩展。 如何解决此问题并成功安装? 问题答案: 在Ubuntu / Debian和其他使用aptitude的发行版上: 软件包已被淘汰,并由代替。这是我找到解决方案的地方。 如果上述命令由于找不到而无法使用,则以下内容就足够了: 在Red Hat