我刚刚将我的Linux盒子从Debian Lenny更新为Debian Squeeze,现在当我使用Nokogiri时,我收到一条警告信息:
警告:Nokogiri是针对LibXML 2.6.32版本构建的,但已动态加载2.7.8
我知道我可以通过重新安装Nokogiri消除警告消息,但是现在我不想这样做,因为gem位于与尚未升级的机器共享的NFS目录中。我最终会升级它们,但是现在我想知道:这个警告是否表明Nokogiri在Squeeze系统上表现不正确,或者我暂时可以安全地忽略它?
答案 0 :(得分:3)
它应该工作正常,它只是告诉你版本之间存在冲突。
开发人员对拥有良好体验的宝石用户感兴趣,所以当我们应该了解的系统发生时,他们会告诉我们。
最好有视觉噪音并知道它是什么,然后将情况完全隐藏起来,如果发生不好的事情会感到惊讶。
您可能希望在运行Nokogiri进行确认的特定计算机上运行某些单元测试代码。 Nokogiri总是有可能尝试在LibXML2的某个版本中使用已更改或不存在的调用,因此您应该确认。
如果您想了解有关可能出现的问题的更多信息,那么Nokogiri-Talk邮件列表就是一个很好的来源。开发人员监控它并可以回答您的任何问题。
答案 1 :(得分:0)
在Mac OSX中,我必须传递库目录:
gem install nokogiri -- --with-xml2-include=/usr/local/Cellar/libxml2/2.7.8/include --with-xml2-lib=/usr/local/Cellar/libxml2/2.7.8/lib --with-xslt-dir=/usr/local/Cellar/libxslt/1.1.26
通过apt或source安装开发版本后,将这些目录替换为您自己的目录。