RVM 1.9.1&引入nokogiri

时间:2010-03-11 14:27:33

标签: ruby nokogiri rvm yarv

在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在用户空间中运行所有内容。

3 个答案:

答案 0 :(得分:10)

更简单的解决方案:

sudo apt-get install libxslt-dev libxml2-dev

答案 1 :(得分:3)

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

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

答案 2 :(得分: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