在优胜美地10.10.3上安装Nokogiri [英] Install Nokogiri on Yosemite 10.10.3
本文介绍了在优胜美地10.10.3上安装Nokogiri的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有:
- Mac OS X Yosemite 10.10.3
- MacPorts(不是Brew )
- 系统中的Ruby 2(不是RVM)
我想安装Nokogiri并尝试:
port install nokogiri
得到:
构建原生扩展。这可能需要一段时间...错误:错误
安装nokogiri:错误:无法构建gem本机扩展。
/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/ruby -r
./siteconf20150323-30174-1mqhl4i.rb extconf.rb检查C
编译器接受...是检查C编译器是否接受
-Wno-error = unused-command-line-argument-hard-error-in-future ... no使用打包库构建nokogiri。在
-lz中检查gzdopen()...是检查iconv ...是
*********************** ****************************************************重要注意:
构建Nokogiri,打包版本为libxml2-2.9.2,应用补丁后为
:
- 0001 - 恢复 - 缺少 - 初始化为目录-module.patch
- 0002-Fix-missing-entities-after-CVE-2014-3660-fix.patch
团队Nokogiri将继续尽全力提供安全性
及时更新,但如果这是您的担忧并希望
改为使用系统库;放弃安装过程并
重新安装nokogiri,如下所示:
gem install nokogiri - --use-system-libraries
[--with-xml2-config = / path / to / xml2-config]
[--with-xslt-config = / path / to / xslt-config]
如果使用Bundler,请告诉它使用以下选项:
bundle config build.nokogiri --use-system-libraries
bundle install
但是请注意,nokogiri与任意
版本不完全兼容由OS /软件包供应商提供的libxml2。
********************************************** **************************将libxml2-2.9.2.tar.gz提取到
tmp / x86_64-apple-darwin14 / ports /libxml2/2.9.2 ...确定使用
运行修补程序/Library/Ruby/Gems/2.0.0/gems/nokogiri-1.6.6.2/ports/patches/libxml2/0001-Revert-Missing-initialization- for-the-catalog-module.patch ...
为libxml2运行'patch'2.9.2 ... OK用
运行补丁/Library/Ruby/Gems/2.0.0/gems/nokogiri -1.6.6.2 / ports / patches / libxml2 / 0002-fix-missing-entities-after-CVE-2014-3660-fix.patch ...
为libxml2运行'patch'2.9.2 ... OK为
运行'configure'libxml2 2.9.2 ...确定为libxml2运行'compile'2.9.2 ...错误,
检查
'/Library/Ruby/Gems/2.0。 0 / gems / nokogiri-1.6.6.2 / ext / nokogiri / tmp / x86_64-apple-darwin14 / ports / libxml2 / 2.9.2 / compile.log'
来查看发生了什么。
*** extconf.rb失败***由于某种原因无法创建Makefile,可能缺少必要的库和/或头文件。检查
mkmf.log文件以获取更多详细信息。您可能需要配置
选项。
提供的配置选项:--with-opt-dir --without-opt-dir
--with-opt-include --without-opt-include = $ {opt-dir } / include
--with-opt-lib --without-opt-lib = $ {opt-dir} / lib --with-make-prog
--without-make-prog - SRCDIR =。 --curdir
--ruby = / System / Library / Frameworks / Ruby.framework / Versions / 2.0 / usr / bin / ruby
--help --clean --use-system-libraries - enable-static
--disable-static --with-zlib-dir --without-zlib-dir
--with-zlib-include --without-zlib-include = $ {zlib-dir } / include
--with-zlib-lib --without-zlib-lib = $ {zlib-dir} / lib
- 启用交叉构建 - 禁用交叉构建
/Library/Ruby/Gems/2.0.0/gems/mini_portile-0.6.2/lib/mini_portile.rb:279:in
`block in execute':无法完成编译任务(RuntimeError)
from
/Library/Ruby/Gems/2.0.0/gems/mini_portile-0.6.2/lib/mini_portile.rb:271:in
`chdir'from
/ Library / Ruby / Gems / 2.0.0 / gems / mini_portile-0.6.2 / lib / mini_portile.rb:271:在
中`执行'
/Library/Ruby/Gems/2.0.0/gems/ mini_portile-0.6.2 / lib / mini_portile.rb:70:在
`compile'中从
/Library/Ruby/Gems/2.0.0/gems/mini_portile-0.6.2/lib/mini_portile。 rb:110:在
`做饭从extconf.rb:278:在block_incess_recipe中从
extconf.rb:177在tap中extconf.rb 177在process_recipe中从
extconf.rb:475: '< main>'
extconf失败,退出代码1
Gem文件将保留安装在
/Library/Ruby/Gems/2.0.0/中宝石/ nokogiri-1.6.6.2进行检查。结果
记录到
/Library/Ruby/Gems/2.0.0/extensions/universal-darwin-14/2.0.0/nokogiri-1.6.6.2/gem_make.out
我试过了:
gem安装nokogiri - --use-system-libraries
得到:
使用'--use-system-libraries'构建本机扩展可能
需要一段时间...错误:安装nokogiri时出错:ERROR :无法
构建gem原生扩展。
/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/ruby -r
./siteconf20150323-34882-16v74a8.rb extconf.rb --use-系统库
检查C编译器是否接受...是检查C编译器
是否接受
-Wno-error =未使用 - 命令行参数-hard-error-in-未来...否使用系统库构建nokogiri。在libxml / parser.h中检查xmlParseDoc()
...在-lxml2中不检查xmlParseDoc()... no
在-llibxml2中检查xmlParseDoc()... no
----- libxml2丢失。请找到mkmf.log来调查它是如何失败的。
-----
*** extconf.rb失败***由于某种原因无法创建Makefile,可能缺少必要的库和/或头文件。检查
mkmf.log文件以获取更多详细信息。您可能需要配置
选项。
提供的配置选项:--with-opt-dir --without-opt-dir
--with-opt-include --without-opt-include = $ {opt-dir } / include
--with-opt-lib --without-opt-lib = $ {opt-dir} / lib --with-make-prog
--without-make-prog - SRCDIR =。 --curdir
--ruby = / System / Library / Frameworks / Ruby.framework / Versions / 2.0 / usr / bin / ruby
--help --clean --use-system-libraries - with-zlib-dir
--without-zlib-dir --with-zlib-include
--without-zlib-include = $ {zlib-dir} / include --with-zlib-lib
--without-zlib-lib = $ {zlib-dir} / lib --with-xml2-dir
--without-xml2-dir --with-xml2-include
- -without-xml2-include = $ {xml2-dir} / include --with-xml2-lib
--without-xml2-lib = $ {xml2-dir} / lib --with-libxml-2.0- config
--without-libxml-2.0-config --with-pkg-config --without-pkg-config
--with-xslt-dir --without-xslt-dir --with- xslt-include
--without-xslt-include = $ {xslt-dir} / include --with-xslt-lib
--without-xslt-lib = $ {xslt-dir} / lib --with-libxslt-config
--without-libxslt-config --with-exslt-dir --without-exslt-dir
--with-exslt-include --without-exslt-include = $ {exslt-dir} / include
--with-exslt-lib --without-exslt-lib = $ {exslt-dir} / lib
--with-libexslt-config --without-libexslt-config --with-xml2lib
--without-xml2lib - with-libxml2lib --without-libxml2lib
extconf失败,退出代码1
Gem文件将保持安装在
/Library/Ruby/Gems/2.0.0中/gems/nokogiri-1.6.6.2进行检查。结果
记录到
/Library/Ruby/Gems/2.0.0/extensions/universal-darwin-14/2.0.0/nokogiri-1.6.6.2/gem_make.out
我试过了:
port安装libxml2
得到:
--->计算libxml2的依赖关系
--->清理libxml2
--->扫描链接错误的二进制文件
--->没有发现破损的文件。
我还可以做些什么来安装Nokogiri?
解决方案
检查Xcode是否安装在您的机器上,然后在终端中运行 xcode-select --install
。这应该可以让你运行 sudo gem install rails
I have:
- Mac OS X Yosemite 10.10.3
- MacPorts (not Brew)
- Ruby 2 in system (not RVM)
I want to install Nokogiri and tried:
port install nokogiri
and got:
Building native extensions. This could take a while... ERROR: Error
installing nokogiri: ERROR: Failed to build gem native extension.
/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/ruby -r
./siteconf20150323-30174-1mqhl4i.rb extconf.rb checking if the C
compiler accepts ... yes checking if the C compiler accepts
-Wno-error=unused-command-line-argument-hard-error-in-future... no Building nokogiri using packaged libraries. checking for gzdopen() in
-lz... yes checking for iconv... yes
************************************************************************ IMPORTANT NOTICE:
Building Nokogiri with a packaged version of libxml2-2.9.2 with the
following patches applied:
- 0001-Revert-Missing-initialization-for-the-catalog-module.patch
- 0002-Fix-missing-entities-after-CVE-2014-3660-fix.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.2.tar.gz into
tmp/x86_64-apple-darwin14/ports/libxml2/2.9.2... OK Running patch with
/Library/Ruby/Gems/2.0.0/gems/nokogiri-1.6.6.2/ports/patches/libxml2/0001-Revert-Missing-initialization-for-the-catalog-module.patch...
Running 'patch' for libxml2 2.9.2... OK Running patch with
/Library/Ruby/Gems/2.0.0/gems/nokogiri-1.6.6.2/ports/patches/libxml2/0002-Fix-missing-entities-after-CVE-2014-3660-fix.patch...
Running 'patch' for libxml2 2.9.2... OK Running 'configure' for
libxml2 2.9.2... OK Running 'compile' for libxml2 2.9.2... ERROR,
review
'/Library/Ruby/Gems/2.0.0/gems/nokogiri-1.6.6.2/ext/nokogiri/tmp/x86_64-apple-darwin14/ports/libxml2/2.9.2/compile.log'
to see what happened.
*** extconf.rb failed *** Could not create Makefile due to some reason, probably lack of necessary libraries and/or headers. Check
the mkmf.log file for more details. You may need configuration
options.
Provided configuration options: --with-opt-dir --without-opt-dir
--with-opt-include --without-opt-include=${opt-dir}/include
--with-opt-lib --without-opt-lib=${opt-dir}/lib --with-make-prog
--without-make-prog --srcdir=. --curdir
--ruby=/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/ruby
--help --clean --use-system-libraries --enable-static
--disable-static --with-zlib-dir --without-zlib-dir
--with-zlib-include --without-zlib-include=${zlib-dir}/include
--with-zlib-lib --without-zlib-lib=${zlib-dir}/lib
--enable-cross-build --disable-cross-build
/Library/Ruby/Gems/2.0.0/gems/mini_portile-0.6.2/lib/mini_portile.rb:279:in
`block in execute': Failed to complete compile task (RuntimeError)
from
/Library/Ruby/Gems/2.0.0/gems/mini_portile-0.6.2/lib/mini_portile.rb:271:in
`chdir' from
/Library/Ruby/Gems/2.0.0/gems/mini_portile-0.6.2/lib/mini_portile.rb:271:in
`execute' from
/Library/Ruby/Gems/2.0.0/gems/mini_portile-0.6.2/lib/mini_portile.rb:70:in
`compile' from
/Library/Ruby/Gems/2.0.0/gems/mini_portile-0.6.2/lib/mini_portile.rb:110:in
`cook' from extconf.rb:278:in `block in process_recipe' from
extconf.rb:177:in `tap' from extconf.rb:177:in `process_recipe' from
extconf.rb:475:in `<main>'
extconf failed, exit code 1
Gem files will remain installed in
/Library/Ruby/Gems/2.0.0/gems/nokogiri-1.6.6.2 for inspection. Results
logged to
/Library/Ruby/Gems/2.0.0/extensions/universal-darwin-14/2.0.0/nokogiri-1.6.6.2/gem_make.out
I tried:
gem install nokogiri -- --use-system-libraries
and got:
Building native extensions with: '--use-system-libraries' This could
take a while... ERROR: Error installing nokogiri: ERROR: Failed to
build gem native extension.
/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/ruby -r
./siteconf20150323-34882-16v74a8.rb extconf.rb --use-system-libraries
checking if the C compiler accepts ... yes checking if the C compiler
accepts
-Wno-error=unused-command-line-argument-hard-error-in-future... no Building nokogiri using system libraries. checking for xmlParseDoc()
in libxml/parser.h... no checking for xmlParseDoc() in -lxml2... no
checking for xmlParseDoc() in -llibxml2... no
----- libxml2 is missing. Please locate mkmf.log to investigate how it is failing.
-----
*** extconf.rb failed *** Could not create Makefile due to some reason, probably lack of necessary libraries and/or headers. Check
the mkmf.log file for more details. You may need configuration
options.
Provided configuration options: --with-opt-dir --without-opt-dir
--with-opt-include --without-opt-include=${opt-dir}/include
--with-opt-lib --without-opt-lib=${opt-dir}/lib --with-make-prog
--without-make-prog --srcdir=. --curdir
--ruby=/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/ruby
--help --clean --use-system-libraries --with-zlib-dir
--without-zlib-dir --with-zlib-include
--without-zlib-include=${zlib-dir}/include --with-zlib-lib
--without-zlib-lib=${zlib-dir}/lib --with-xml2-dir
--without-xml2-dir --with-xml2-include
--without-xml2-include=${xml2-dir}/include --with-xml2-lib
--without-xml2-lib=${xml2-dir}/lib --with-libxml-2.0-config
--without-libxml-2.0-config --with-pkg-config --without-pkg-config
--with-xslt-dir --without-xslt-dir --with-xslt-include
--without-xslt-include=${xslt-dir}/include --with-xslt-lib
--without-xslt-lib=${xslt-dir}/lib --with-libxslt-config
--without-libxslt-config --with-exslt-dir --without-exslt-dir
--with-exslt-include --without-exslt-include=${exslt-dir}/include
--with-exslt-lib --without-exslt-lib=${exslt-dir}/lib
--with-libexslt-config --without-libexslt-config --with-xml2lib
--without-xml2lib --with-libxml2lib --without-libxml2lib
extconf failed, exit code 1
Gem files will remain installed in
/Library/Ruby/Gems/2.0.0/gems/nokogiri-1.6.6.2 for inspection. Results
logged to
/Library/Ruby/Gems/2.0.0/extensions/universal-darwin-14/2.0.0/nokogiri-1.6.6.2/gem_make.out
I tried:
port install libxml2
and got:
---> Computing dependencies for libxml2
---> Cleaning libxml2
---> Scanning binaries for linking errors
---> No broken files found.
What else I can do to install Nokogiri?
解决方案
Check to see if Xcode is installed on your machine then run xcode-select --install
in the terminal. This should do the trick and allow you to run sudo gem install rails
这篇关于在优胜美地10.10.3上安装Nokogiri的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文