【问题标题】:Nokogiri error when running bundle install运行捆绑安装时出现 Nokogiri 错误
【发布时间】:2013-06-16 17:59:43
【问题描述】:

试图让克隆的 Rails 应用程序运行。运行 bundle install 时出现此错误:

Using mini_portile (0.5.0)
Installing nokogiri (1.6.0)
Gem::InstallError: nokogiri requires Ruby version >= 1.9.2.
An error occurred while installing nokogiri (1.6.0), and Bundler cannot continue.
Make sure that `gem install nokogiri -v '1.6.0'` succeeds before bundling.

但这是rbenv version的输出:

› rbenv version
1.9.3-p429 (set by /Users/andrewguo/.rbenv/version)

运行gem list 时,我得到:

.
.
.
mini_portile (0.5.0)
minitest (2.5.1)
multi_json (1.7.7)
nokogiri (1.6.0)

我已经绞尽脑汁一个小时想弄清楚可能出了什么问题...请帮忙!

编辑:

这是一个更详细的错误输出:

An error occurred while installing nokogiri (1.6.0), and Bundler cannot continue.
Make sure that `gem install nokogiri -v '1.6.0'` succeeds before bundling.
Bundler::InstallError: An error occurred while installing nokogiri (1.6.0), and Bundler cannot continue.
Make sure that `gem install nokogiri -v '1.6.0'` succeeds before bundling.
/Library/Ruby/Gems/1.8/gems/bundler-1.3.5/lib/bundler/installer.rb:130:in `install_gem_from_spec'
/Library/Ruby/Gems/1.8/gems/bundler-1.3.5/lib/bundler/installer.rb:91:in `run'
/Library/Ruby/Gems/1.8/gems/bundler-1.3.5/lib/bundler/installer.rb:90:in `run'
/Library/Ruby/Gems/1.8/gems/bundler-1.3.5/lib/bundler/installer.rb:14:in `install'
/Library/Ruby/Gems/1.8/gems/bundler-1.3.5/lib/bundler/cli.rb:247:in `install'
/Library/Ruby/Gems/1.8/gems/bundler-1.3.5/lib/bundler/vendor/thor/task.rb:27:in `__send__'
/Library/Ruby/Gems/1.8/gems/bundler-1.3.5/lib/bundler/vendor/thor/task.rb:27:in `run'
/Library/Ruby/Gems/1.8/gems/bundler-1.3.5/lib/bundler/vendor/thor/invocation.rb:120:in `invoke_task'
/Library/Ruby/Gems/1.8/gems/bundler-1.3.5/lib/bundler/vendor/thor.rb:344:in `dispatch'
/Library/Ruby/Gems/1.8/gems/bundler-1.3.5/lib/bundler/vendor/thor/base.rb:434:in `start'
/Library/Ruby/Gems/1.8/gems/bundler-1.3.5/bin/bundle:20
/Library/Ruby/Gems/1.8/gems/bundler-1.3.5/lib/bundler/friendly_errors.rb:3:in `with_friendly_errors'
/Library/Ruby/Gems/1.8/gems/bundler-1.3.5/bin/bundle:20
/usr/bin/bundle:19:in `load'
/usr/bin/bundle:19

【问题讨论】:

    标签: ruby-on-rails ruby rubygems nokogiri rbenv


    【解决方案1】:

    尝试使用旧版本的 nokogiri,它对我有用

    宝石'nokogiri','1.5.9'

    【讨论】:

    • 怎么用?写入文件 gem ?
    【解决方案2】:

    结果我使用的是默认系统 Ruby(因此在 /Library/Ruby/Gems 中安装了所有的 gem),尽管 rbenv 指向 ruby​​-1.9.3,所以这就是 Nokogiri 抱怨的原因。

    通过将其添加到 $PATH 来解决此问题,因此 rbenv 在系统 ruby​​ 之前加载:

    export PATH="$HOME/.rbenv/bin:$PATH"

    【讨论】:

      【解决方案3】:

      使用此命令安装旧版本:gem install nokogiri -v 1.5.5

      【讨论】:

        【解决方案4】:

        确保您拥有最新版本的命令行工具。如果您不确定只需运行xcode-select --install,它将弹出一个很好的 gui 来指导您完成安装过程。您也可以查看 mac 应用商店,看看是否有更新等着您。当前版本是Command Line Developer Tool for OS X 10.10,因此您可以查看优胜美地是否对此没有问题。获取更新后,运行sudo bundle install 即可获得最新版本的nokogiri。祝你好运。

        【讨论】:

          【解决方案5】:

          我遇到了这个错误,这对我有用:

          bundle config build.nokogiri --use-system-libraries
          bundle install
          

          问题出在libxml:

          libxml2 is missing.  Please locate mkmf.log to investigate how it is failing.
          

          【讨论】:

          • 下一个对我有用: sudo gem install nokogiri -v '1.6.6.2' -- --use-system-libraries --with-xml2-include=/usr/include/libxml2 --with -xml2-lib=/usr/lib
          【解决方案6】:

          如果谷歌同事使用的是 linux (ubuntu),那么安装 deb 包 zlib1g-dev 会有所帮助

          【讨论】:

            【解决方案7】:

            以下内容对我有用:

            gem install nokogiri -- --use-system-libraries
            

            【讨论】:

              【解决方案8】:

              我使用的是 Mac OSX (El Capitan),它似乎与 Xcode 开发工具有关。我在工作目录中运行xcode-select --install,然后重新运行bundle install 命令,之后一切正常^^。

              希望这可以帮助某人。

              【讨论】:

                【解决方案9】:

                你只需要在你的 macOS 中安装 Homebrew

                在终端/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"上运行

                【讨论】:

                • 请详细说明
                • 您能进一步解释一下吗?安装 Homebrew 如何解决给定的问题?
                【解决方案10】:

                在 Ubuntu 机器上,这些是安装 Nokogiri 的文档建议:

                sudo apt-get install build-essential patch ruby-dev zlib1g-dev liblzma-dev
                gem install nokogiri
                

                https://nokogiri.org/tutorials/installing_nokogiri.html

                我还必须: sudo apt-get install libxslt-dev libxml2-dev 如此帖子所述: https://stackoverflow.com/a/6277635/5656846

                【讨论】:

                  猜你喜欢
                  • 2019-11-05
                  • 1970-01-01
                  • 1970-01-01
                  • 2017-07-25
                  • 2015-05-15
                  • 2021-10-27
                  • 2013-08-23
                  • 1970-01-01
                  • 1970-01-01
                  相关资源
                  最近更新 更多