ruby on rails - 问题捆绑安装nokogiri 1.7.2 on ruby​​ on rails 4.x.

Axi*_*xil 5 rubygems ruby-on-rails nokogiri ruby-on-rails-4

我有问题尝试捆绑安装nokogiri 1.7.2

我在用

gem 'rails', '4.2.4'
MacOS High Sierra version 10.13.6
Run Code Online (Sandbox Code Playgroud)

我不知道出了什么问题

下面是我的错误输出:

完整错误输出:

https://gist.github.com/axilaris/68e7df57c3e29366d7a1998eebd93517

这是错误描述的地方:

An error occurred while installing nokogiri (1.7.2), and Bundler cannot continue.
Make sure that `gem install nokogiri -v '1.7.2'` succeeds before bundling.

In Gemfile:
  rails_admin was resolved to 1.1.1, which depends on
    rails was resolved to 4.2.4, which depends on
      actionmailer was resolved to 4.2.4, which depends on
        actionpack was resolved to 4.2.4, which depends on
          actionview was resolved to 4.2.4, which depends on
            rails-dom-testing was resolved to 1.0.8, which depends on
              nokogiri
Run Code Online (Sandbox Code Playgroud)

更新,没有使用sudo gem install nokogiri

$ sudo gem install nokogiri -v '1.7.2'
Building native extensions.  This could take a while...
Run Code Online (Sandbox Code Playgroud)

....

Building Nokogiri with a packaged version of libxml2-2.9.4
with the following patches applied:
    - 0001-Fix-comparison-with-root-node-in-xmlXPathCmpNodes.patch
    - 0002-Fix-XPointer-paths-beginning-with-range-to.patch
    - 0003-Disallow-namespace-nodes-in-XPointer-ranges.patch

Team Nokogiri will keep on doing their best to provide security
updates in a timely manner, but if this is a concern for you and want
to use the system library instead; abort this installation process and
reinstall nokogiri as follows:

    gem install nokogiri -- --use-system-libraries
        [--with-xml2-config=/path/to/xml2-config]
        [--with-xslt-config=/path/to/xslt-config]

If you are using Bundler, tell it to use the option:

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

Note, however, that nokogiri is not fully compatible with arbitrary
versions of libxml2 provided by OS/package vendors.
************************************************************************
Extracting libxml2-2.9.4.tar.gz into tmp/x86_64-apple-darwin17/ports/libxml2/2.9.4... OK
Running git apply with /Library/Ruby/Gems/2.3.0/gems/nokogiri-1.7.2/patches/libxml2/0001-Fix-comparison-with-root-node-in-xmlXPathCmpNodes.patch... OK
Running git apply with /Library/Ruby/Gems/2.3.0/gems/nokogiri-1.7.2/patches/libxml2/0002-Fix-XPointer-paths-beginning-with-range-to.patch... OK
Running git apply with /Library/Ruby/Gems/2.3.0/gems/nokogiri-1.7.2/patches/libxml2/0003-Disallow-namespace-nodes-in-XPointer-ranges.patch... OK
Running 'configure' for libxml2 2.9.4... OK
Running 'compile' for libxml2 2.9.4... ERROR, review '/Library/Ruby/Gems/2.3.0/gems/nokogiri-1.7.2/ext/nokogiri/tmp/x86_64-apple-darwin17/ports/libxml2/2.9.4/compile.log' to see what happened. Last lines are:
...
Run Code Online (Sandbox Code Playgroud)

也许与此相关?https://github.com/sparklemotion/nokogiri/issues/1690

更新18.9.2018

我注意到笔记本电脑上的rails环境存在重大问题.我试图创建一个新的rails应用程序.nokogiri给我的环境带来了重大问题.问题是什么以及如何解决这个问题? https://gist.github.com/axilaris/03882e15d2cbd603279a654547752f9c

Mat*_*eer 3

有时也会发生在我身上,在这种情况下,我只需gem install nokogiri -v '1.7.2'按照错误提示通过安装 nokogiri 即可。如果失败,gem uninstall nokogiri -v '1.7.2'请先尝试,然后重试...

正如 xploshioOn 所提到的,sudo gem install作为最后的手段使用。