不能安装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
这将工作。
sudo apt-get install libxslt-dev libxml2-dev
gem install nokogiri
可能需要先卸载nokogirl和/或libxml-ruby第一个ala:gem uninstall nokogiri;宝石卸载libxml-ruby;然后重新安装 – 2012-10-05 23:22:25
确认在Ubuntu 13.10的作品 – 2014-02-22 19:12:41
我不断收到此错误,并且每次尝试运行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)
我用'yum install libxml2-devel libxslt-devel'(在CentOS 6.7上)逃脱了。我没有安装系统Ruby,所以这节省了我不得不安装一堆Ruby相关的依赖项。 – mwfearnley 2017-12-05 09:27:26
这将有助于知道这是什么操作系统。 – 2012-03-06 18:57:30
Ohh,sry Ubuntu 11.10 – 2012-03-06 19:43:13
尝试一种不同的方法 - 你应该在安装失败的目录中有一个'mkmf.log'文件。你能告诉我们该文件的内容吗?另外 - 你的系统上是否安装了构建工具和编译器? 'extconf.rb'可能试图做测试构建。尝试从命令行运行'gcc'或'make',看看它们是否响应。 – birryree 2012-03-06 21:33:56