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