【问题标题】:Nokogiri was built against LibXML version 2.9.1, but has dynamically loaded 2.8.0Nokogiri 是针对 LibXML 版本 2.9.1 构建的,但已动态加载 2.8.0
【发布时间】:2015-06-30 06:47:46
【问题描述】:

我要跑步

bundle exec rake fixtures:populate_from_db

在 CentOS 上,但我收到以下警告消息:

WARNING: Nokogiri was built against LibXML version 2.9.1, but has dynamically loaded 2.8.0
rake aborted!

~/.bundle/config 文件包含:

BUNDLE_BUILD__NOKOGIRI: "--with-xml2-include=/opt/local/include/libxml2 --with-xml2-lib=/opt/local/lib --with-xslt-dir=/opt/local"

如何重新编译Nokogiri 2.8.0版本的LibXML?

【问题讨论】:

  • 欢迎来到 Stack Overflow。您是否阅读了本页右下方“相关”链接中的各种类似问题?当你尝试这些事情时发生了什么?

标签: ruby-on-rails ruby rake nokogiri libxml2


【解决方案1】:

尝试运行:

gem update --system & gem pristine nokogiri

刚刚为我工作。

【讨论】:

    【解决方案2】:

    以下步骤解决了我的问题

    gem uninstall nokogiri # remove nokogiri
    NOKOGIRI_USE_SYSTEM_LIBRARIES=1 bundle install
    

    结合来自的解决方案 https://simonharrer.wordpress.com/2013/05/01/fixing-nokogiri-warning-after-ubuntu-upgrade/https://github.com/sparklemotion/nokogiri/wiki/What-to-do-if-libxml2-is-being-a-jerk

    【讨论】:

    • 我需要在NOKOGIRI_USE_SYSTEM_LIBRARIES=1 bundle install之前sudo apt-get install libxslt1-dev
    【解决方案3】:

    试试这个:

    gem install nokogiri -- --with-xml2-include=/usr/include/libxml2/libxml --with-xml2-lib=/usr/lib64/ --with-sxlt-include=/usr/include/libxslt --with-xslt-lib=/usr/lib64/
    

    【讨论】:

      【解决方案4】:

      我知道这听起来很傻,但是尝试将 Nokogiri 放在 Gemfile 的顶部。这适用于其他 gem 在本机扩展上发生冲突的某些情况

      【讨论】:

        【解决方案5】:

        我有一个旧应用程序锁定在 Nokogiri v1.5.11 上,直到我将 Nokogiri 升级到 v1.6.8.1 之前,我无法在 Debian 9 上解决这个问题

        【讨论】:

          【解决方案6】:

          总结

          gem update --system & gem pristine nokogiri
          gem install nokogiri

          (以@Jonny answer 为基础——谢谢

          详情

          我遇到了与标题相同的错误。
          运行他的命令后,运行 ruby​​ 脚本失败并出现以下错误:

          /Users/username/.rvm/rubies/ruby-2.4.0/lib/ruby/site_ruby/2.4.0/rubygems/core_ext/kernel_require.rb:92:in `require': cannot load such file -- nokogiri (LoadError)
          from /Users/username/.rvm/rubies/ruby-2.4.0/lib/ruby/site_ruby/2.4.0/rubygems/core_ext/kernel_require.rb:92:in `require'
          from my_ruby_script.rb:3:in `<main>'
          

          然后我再次添加运行gem install nokogiri,一切恢复正常。

          【讨论】:

            猜你喜欢
            • 2013-12-08
            • 2014-01-07
            • 2013-07-21
            • 2011-06-17
            • 2013-06-28
            • 2012-07-12
            • 1970-01-01
            • 2011-10-11
            • 2013-04-25
            相关资源
            最近更新 更多