' require': no such file to load——mkmf (LoadError)

我试图在Ubuntu Natty Narwhal 11.04上安装rails,使用ruby1.9.1。

我使用包含开发包的apt-get install ruby1.9.1-full安装ruby。我谷歌了这个错误,所有人都建议我安装1.9.1-dev,我已经安装了。

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


/usr/bin/ruby1.8 extconf.rb
extconf.rb:36:in `require': no such file to load -- mkmf (LoadError)
from extconf.rb:36




Gem files will remain installed in /usr/lib/ruby/gems/1.8/gems/bcrypt-ruby-3.0.1 for inspection.
Results logged to /usr/lib/ruby/gems/1.8/gems/bcrypt-ruby-3.0.1/ext/mri/gem_make.out
174281 次浏览

你有没有试过:

sudo apt-get install ruby1.8-dev

在寻找解决方案后,发现需要-dev包,而不仅仅是ruby1.8包。如果你有ruby1.9.1

sudo apt-get install ruby1.9.1-dev

或者安装通用ruby版本,使用(根据@lamplightdev comment):

sudo apt-get install ruby-dev

应该把它修好。

尝试locate mkmf查看文件是否确实存在。

你可以使用RVM(Ruby版本管理器)来管理你机器上的所有Ruby版本,这对你的开发非常有帮助(当从不稳定版本迁移到稳定版本时)。

或Linux (ubuntu) # EYZ0 < / p >

然后sudo gem install rails来验证它,执行rails -v,它将显示rails上的版本

之后,你可以安装包(开发所需的宝石)

这个答案对我很管用。在上面的评论中,但它值得作为ubuntu 12.04 ruby 1.8.7的答案

sudo apt-get install ruby-dev
# if above doesnt work make sure you have build essential
sudo apt-get install build-essential

我还需要build-essential安装:

sudo apt-get install build-essential

问题仍然是Ubuntu 13/04/13.10/14.04上的递归

而且

sudo apt-get install ruby1.9.1-dev

对我来说还行。所以如果你使用的是Ubuntu 13.04/13.10/14.04,那么使用这个将真的很方便。

即使ruby版本是1.9.3,这也是有效的。这是因为库中没有ruby1.9.3-dev可用…

我觉得有点晚了,但是

sudo yum install -y gcc ruby-devel libxml2 libxml2-devel libxslt libxslt-devel

帮我做软呢帽。

http://nokogiri.org/tutorials/installing_nokogiri.html

我得到类似的错误时安装包

sudo apt-get install ruby-dev

对我来说很好,解决了问题 Mint 16 ruby1.9.3

您使用的是Ruby 1.8,因此您至少需要升级到1.9才能使其正常工作。

如果是,那么检查如何安装特定版本的红宝石宝石?

如果这没有帮助,那么重新安装ruby-dev

Ruby版本:2.7.1 Gem版本:3.1.3

您需要检查无法安装的扩展,并找到原因。

读取安装错误要了解为什么这个扩展未能编译,请检查mkmf.log,可以在这里找到下显示的mkmf.log文件,可能缺少一个库(有时是iconv),您必须安装它。

你也可以用你的包管理器(apt, yum, pacman…)搜索扩展。

(个人情况)Arch Linux->nokogiri

gem install rails

给我:

要了解为什么这个扩展编译失败,请检查mkmf.log 可以在这里找到: /home/user/.gem/ruby/2.7.0/extensions/x86_64-linux / 2.7.0 / # EYZ0-1.10.9 / mkmf.log < / p >

转到:https://aur.archlinux.org/packages/ruby-nokogiri/

  1. 确保安装了所有依赖项
  2. 确保安装了make
  3. git clone
  4. cd打包
  5. makepkg

希望对大家有所帮助!