我尝试在我的Ubuntu 12.04系统上安装Nokogiri,并得到一个错误,说“ libxslt is missing
”,但是安装了libxslt-dev
和libxml2-dev
。
有一个强大的安装过程? 我怎样才能检查到依赖库的链接?
我使用了RVM,并且也安装了RVM pkg。
ERROR: Error installing nokogiri: ERROR: Failed to build gem native extension. /home/victor/.rvm/rubies/ruby-1.9.3-p125/bin/ruby extconf.rb checking for libxml/parser.h... yes checking for libxslt/xslt.h... yes checking for libexslt/exslt.h... yes checking for iconv_open() in iconv.h... yes checking for xmlParseDoc() in -lxml2... yes checking for xsltParseStylesheetDoc() in -lxslt... no ----- libxslt is missing. please visit http://nokogiri.org/tutorials/installing_nokogiri.html for help with installing dependencies. ----- *** extconf.rb failed *** Could not create Makefile due to some reason, probably lack of necessary libraries and/or headers. Check the mkmf.log file for more details. You may need configuration options. Provided configuration options: --with-opt-dir --with-opt-include --without-opt-include=${opt-dir}/include --with-opt-lib --without-opt-lib=${opt-dir}/lib --with-make-prog --without-make-prog --srcdir=. --curdir --ruby=/home/victor/.rvm/rubies/ruby-1.9.3-p125/bin/ruby --with-zlib-dir --without-zlib-dir --with-zlib-include --without-zlib-include=${zlib-dir}/include --with-zlib-lib --without-zlib-lib=${zlib-dir}/lib --with-iconv-dir --without-iconv-dir --with-iconv-include --without-iconv-include=${iconv-dir}/include --with-iconv-lib --without-iconv-lib=${iconv-dir}/lib --with-xml2-dir --without-xml2-dir --with-xml2-include --without-xml2-include=${xml2-dir}/include --with-xml2-lib --without-xml2-lib=${xml2-dir}/lib --with-xslt-dir --without-xslt-dir --with-xslt-include --without-xslt-include=${xslt-dir}/include --with-xslt-lib --without-xslt-lib=${xslt-dir}/lib --with-libxslt-config --without-libxslt-config --with-pkg-config --without-pkg-config --with-libxml-2.0-config --without-libxml-2.0-config --with-libiconv-config --without-libiconv-config --with-xml2lib --without-xml2lib --with-xsltlib --without-xsltlib Gem files will remain installed in /home/victor/.rvm/gems/ruby-1.9.3-p125@dradis/gems/nokogiri-1.5.4 for inspection. Results logged to /home/victor/.rvm/gems/ruby-1.9.3-p125@dradis/gems/nokogiri-1.5.4/ext/nokogiri/gem_make.out enter code here
我也遇到了与rvm相同的问题,尽管我按照文档完成了以下内容:
sudo apt-get install libxslt-dev libxml2-dev
rvm pkg libxml2
和rvm pkg libxslt
我能解决这个问题的唯一办法就是经过漫长的调查:
rvm remove 1.9.3
~/.rvm/usr/lib
删除所有libxslt*
和libxml2*
libs,如果之前已经完成了rvm pkg ...
rvm install 1.9.3
在 apt-get
命令之后重新安装似乎是实现这一目标的唯一方法。 另外,确保使用rvm pkg
安装的库不会干涉帮助。
当一切都失败了…
如果一切都失败了,你绝对需要安装gem,那么你也可以通过应用一个简单的补丁来重建nokogiri
– 假如你已经安装了所有的构建工具,并且需要安装最新且可能不稳定的代码:
git clone git://github.com/sparklemotion/nokogiri
x86_64.patch
在nokogiri
文件夹中。 patch -p1 < x86_64.patch
rake native gem
– 这应该建立在pkg/
文件夹中的宝石 gem install pkg/nokogiri-<version>-x86_64-linux.gem
安装gem 我对红宝石很新,但是这个…
gem install nokogiri -v '1.5.2' -- --with-xml2-lib=/usr/lib/i386-linux-gnu --with-xml2-include=/usr/include/libxml2 --with-xslt-lib=/usr/lib/i386-linux-gnu --with-xslt-include=/usr/include/libxslt
…在Ubuntu 12.04上为我工作。 (不管怎么说,它满足了nokogiri的依赖性,让我更接近我真正想要完成的事情)。我认为这可能已经搞乱了我的RVM魔法,但nokogirl-1.5.2绝对坐在那里〜 /.rvm/ruby-1.9.3-p194/gems,所以…也许这都很好?
我在Ubuntu 13.04上遇到了这个问题。
我已经尝试了你在网上找到的所有东西。 确保Nokogiri安装页面上列出的软件包存在等。
最终做的唯一的事情就是从源代码安装libsxlt。 之后,一切工作完美。
我不得不使用gem install nokogiri – –with-iconv-dir = / usr / lib / ruby / 1.9.1 / x86_64-linux
sudo apt-get install ruby1.8-dev ruby1.8 ri1.8 rdoc1.8 irb1.8 sudo apt-get install libreadline-ruby1.8 libruby1.8 libopenssl-ruby sudo apt-get install libxslt-dev libxml2-dev
?