无法安装Nokogiri gem,“libxml / parser.h”未找到,但它的存在,为什么?

时间:2012-03-06 18:54:53

标签: ruby gem nokogiri libxml2

我试图安装Nokogiri,但我总是遇到编译错误:

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

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

失败似乎与海湾合作委员会有关:

%> 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

2 个答案:

答案 0 :(得分:21)

这样可行。

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

答案 1 :(得分:1)

我在(cat /etc/centos-release :) CentOS 6.6版(最终版)上遇到了同样的问题。

sudo yum install -y rubygem-nokogiri

...解决了这个问题。

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