安裝 nokogiri 時出現以下錯誤信息:
Installing nokogiri (1.5.0) with native extensions /opt/oracle/otk/home/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/site_ruby/1.9.1/rubygems/installer.rb:552:in `rescue in block in build_extensions': ERROR: Failed to build gem native extension. (Gem::Installer::ExtensionBuildError)
......
checking for xmlHasFeature()... no
-----
The function 'xmlHasFeature' is missing from your installation of libxml2. Likely this means that your installed version of libxml2 is old enough that nokogiri will not work well. To get around this problem, please upgrade your installation of libxml2.
解決方法:
查看現有版本
$ rpm -q libxml2
libxml2-2.6.16-12.6.0.1
$ ls -l /usr/lib | grep libxml2
下載libxml2
http://ftp.gnome.org/pub/GNOME/sources/libxml2/2.6/
解壓安裝新版本
# cd /opt/ror
# tar -zxf libxml2-2.6.30.tar.gz
# cd libxml2-2.6.30
# mkdir -p /opt/libxml2
# ./configure --prefix=/opt/libxml2
# make
# make install
通过--with-xml2-include参数来指定正确的 libxml2 库的位置
$ gem install nokogiri -- --with-xml2-include=/opt/libxml2/include/libxml2
Building native extensions. This could take a while...
Successfully installed nokogiri-1.5.0
1 gem installed
Installing ri documentation for nokogiri-1.5.0...
Installing RDoc documentation for nokogiri-1.5.0...
安裝成功.