7

在 rvm ruby​​ 1.9.1 下安装 nokogiri gem 时遇到问题。

gem install nokogiri

我越来越 ...

/usr/include/libxml2... no
libxml2 is missing.  try 'port install libxml2' or 'yum install libxml2-devel'
*** extconf.rb failed ***

但我检查了:

sudo apt-get install libxml2

我得到了:

Reading state information... Done
libxml2 is already the newest version.

这可能是根本原因吗?RVM 在用户空间中运行一切。

4

3 回答 3

10

一个更简单的解决方案:

sudo apt-get install libxslt-dev libxml2-dev
于 2011-08-31T03:06:14.527 回答
3

您可能想确认 apt 安装的 libxml 版本是最新的。Nokogiri 喜欢新版本的 libxml,所以我从源代码构建了我的 libxml 安装。

nokogiri -v 会告诉你你正在使用什么。

于 2010-03-11T17:37:39.557 回答
2

我在 Mac 上使用自制软件遇到了类似的问题。

这是实现此目的的代码,它是自制软件 Nokogiri 安装说明的一个小扩展。基本上,您需要包含一个指令来告诉 nokogiri 使用自制的 libxml 目录。确保指向 homebrew 安装的 libxml2 的正确版本,对我来说是 2.7.8:

brew install libxml2

brew link libxml2 #this may be enough but didn't work for me with rvm

#explicitly tell nokogiri to use you homebrew libxml2 rather than system
gem install nokogiri -- --with-xml2-include=/usr/local/Cellar/libxml2/2.7.8/include/libxml2 --with-xml2-lib=/usr/local/Cellar/libxml2/2.7.8/lib --with-xslt-dir=/usr/local/Cellar/libxslt/1.1.26
于 2011-06-13T22:46:39.503 回答