不能安装Nokogiri gem,找不到“libxml/parser.h”,但它在那里,为什么?

问题描述:

我试图安装引入nokogiri但我总是得到一个编译错误:不能安装Nokogiri gem,找不到“libxml/parser.h”,但它在那里,为什么?

checking for libxml/parser.h... *** extconf.rb failed *** 

,但是,我已经安装了它和其他所有依赖关系。

我试着给安装程序的提示是这样的:

%> gem install nokogiri -- --with-xml2-lib=/usr/lib/ --with-xml2-include=/usr/include/libxml2/ 

... 

checking for libxml/parser.h... *** extconf.rb failed *** 

... 

,但它仍然没有安装:

%> find /usr/include/ -name "parser.h"  
/usr/include/libxml2/libxml/parser.h 
... 

我在Ubuntu 11.10。

~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~

输出的:

dpkg-query -l | grep xml” 和 “dpkg-query -l | grep xslt

~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~

失败似乎是在GCC侧:

%> cat hello.c 
#include <stdio.h> 

main() 
{ 
    printf("Hello World \n"); 
} 

%> gcc hello.c 
/usr/lib/gcc/x86_64-linux-gnu/4.6.1/../../../x86_64-linux-gnu/crt1.o: In function `_start': 
(.text+0x12): undefined reference to `__libc_csu_fini' 
/usr/lib/gcc/x86_64-linux-gnu/4.6.1/../../../x86_64-linux-gnu/crt1.o: In function `_start': 
(.text+0x19): undefined reference to `__libc_csu_init' 
collect2: ld gab 1 als Ende-Status zurück 
+1

这将有助于知道这是什么操作系统。 – 2012-03-06 18:57:30

+0

Ohh,sry Ubuntu 11.10 – 2012-03-06 19:43:13

+0

尝试一种不同的方法 - 你应该在安装失败的目录中有一个'mkmf.log'文件。你能告诉我们该文件的内容吗?另外 - 你的系统上是否安装了构建工具和编译器? 'extconf.rb'可能试图做测试构建。尝试从命令行运行'gcc'或'make',看看它们是否响应。 – birryree 2012-03-06 21:33:56

这将工作。

sudo apt-get install libxslt-dev libxml2-dev 
gem install nokogiri 
+1

可能需要先卸载nokogirl和/或libxml-ruby第一个ala:gem uninstall nokogiri;宝石卸载libxml-ruby;然后重新安装 – 2012-10-05 23:22:25

+0

确认在Ubuntu 13.10的作品 – 2014-02-22 19:12:41

+0

我不断收到此错误,并且每次尝试运行Rails 3应用程序时都必须使用此解决方案。 – Donato 2015-05-23 20:32:33

我只是在面临同样的问题(cat /etc/centos-release :) CentOS版本6.6(决赛)。

sudo yum install -y rubygem-nokogiri 

...解决了这个问题。

(参见:http://www.nokogiri.org/tutorials/installing_nokogiri.html#red_hat___centos

+0

我用'yum install libxml2-devel libxslt-devel'(在CentOS 6.7上)逃脱了。我没有安装系统Ruby,所以这节省了我不得不安装一堆Ruby相关的依赖项。 – mwfearnley 2017-12-05 09:27:26