2016-07-03 3 views
3

Я попытался установить механизацию на своем Mac, но всегда получаю ошибку. Я пробовал все ответы на сайте, но никто не работал для меня.установка механизации на mac с ошибкой

Я пробовал sudo gem install mechanize, и я получил ошибку ниже.

Password: 
Building native extensions. This could take a while... 
ERROR: Error installing mechanize: 
    ERROR: Failed to build gem native extension. 

    current directory: /Library/Ruby/Gems/2.0.0/gems/nokogiri-1.6.8/ext/nokogiri 
/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/ruby -r ./siteconf20160703-8312-16oc548.rb extconf.rb 
Using pkg-config version 1.1.7 
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. 
Using mini_portile version 2.1.0 
checking for iconv.h... yes 
checking for gzdopen() in -lz... yes 
checking for iconv... yes 
************************************************************************ 
IMPORTANT NOTICE: 

Building Nokogiri with a packaged version of libxml2-2.9.4. 

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-darwin15/ports/libxml2/2.9.4... OK 
Running 'configure' for libxml2 2.9.4... OK 
Running 'compile' for libxml2 2.9.4... ERROR, review '/Library/Ruby/Gems/2.0.0/gems/nokogiri-1.6.8/ext/nokogiri/tmp/x86_64-apple-darwin15/ports/libxml2/2.9.4/compile.log' to see what happened. Last lines are: 
======================================================================== 
    unsigned short* in = (unsigned short*) inb; 
         ^~~~~~~~~~~~~~~~~~~~~ 
encoding.c:815:27: warning: cast from 'unsigned char *' to 'unsigned short *' increases required alignment from 1 to 2 [-Wcast-align] 
    unsigned short* out = (unsigned short*) outb; 
          ^~~~~~~~~~~~~~~~~~~~~~ 
4 warnings generated. 
    CC  error.lo 
    CC  parserInternals.lo 
    CC  parser.lo 
    CC  tree.lo 
    CC  hash.lo 
    CC  list.lo 
    CC  xmlIO.lo 
xmlIO.c:1450:52: error: use of undeclared identifier 'LZMA_OK' 
    ret = (__libxml2_xzclose((xzFile) context) == LZMA_OK) ? 0 : -1; 
               ^
1 error generated. 
make[2]: *** [xmlIO.lo] Error 1 
make[1]: *** [all-recursive] Error 1 
make: *** [all] Error 2 
======================================================================== 
*** 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_portile2-2.1.0/lib/mini_portile2/mini_portile.rb:366:in `block in execute': Failed to complete compile task (RuntimeError) 
    from /Library/Ruby/Gems/2.0.0/gems/mini_portile2-2.1.0/lib/mini_portile2/mini_portile.rb:337:in `chdir' 
    from /Library/Ruby/Gems/2.0.0/gems/mini_portile2-2.1.0/lib/mini_portile2/mini_portile.rb:337:in `execute' 
    from /Library/Ruby/Gems/2.0.0/gems/mini_portile2-2.1.0/lib/mini_portile2/mini_portile.rb:111:in `compile' 
    from /Library/Ruby/Gems/2.0.0/gems/mini_portile2-2.1.0/lib/mini_portile2/mini_portile.rb:150:in `cook' 
    from extconf.rb:364:in `block (2 levels) in process_recipe' 
    from extconf.rb:257:in `block in chdir_for_build' 
    from extconf.rb:256:in `chdir' 
    from extconf.rb:256:in `chdir_for_build' 
    from extconf.rb:363:in `block in process_recipe' 
    from extconf.rb:262:in `tap' 
    from extconf.rb:262:in `process_recipe' 
    from extconf.rb:555:in `<main>' 

To see why this extension failed to compile, please check the mkmf.log which can be found here: 

    /Library/Ruby/Gems/2.0.0/extensions/universal-darwin-15/2.0.0/nokogiri-1.6.8/mkmf.log 

extconf failed, exit code 1 

Gem files will remain installed in /Library/Ruby/Gems/2.0.0/gems/nokogiri-1.6.8 for inspection. 
Results logged to /Library/Ruby/Gems/2.0.0/extensions/universal-darwin-15/2.0.0/nokogiri-1.6.8/gem_make.out 

У меня есть установки командной строки Xcode, и когда я делаю это

xcode-select -p 

Я получаю /Applications/Xcode.app/Contents/Developer

это также ошибка при попытке nokogiri Админы-MBP: ~ админ $ Sudo камень установить nokogiri

Password: 
Building native extensions. This could take a while... 
ERROR: Error installing nokogiri: 
    ERROR: Failed to build gem native extension. 

    current directory: /Library/Ruby/Gems/2.0.0/gems/nokogiri-1.6.8/ext/nokogiri 
/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/ruby -r ./siteconf20160703-27126-1ef91wn.rb extconf.rb 
Using pkg-config version 1.1.7 
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. 
Using mini_portile version 2.1.0 
checking for iconv.h... yes 
checking for gzdopen() in -lz... yes 
checking for iconv... yes 
************************************************************************ 
IMPORTANT NOTICE: 

Building Nokogiri with a packaged version of libxml2-2.9.4. 

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-darwin15/ports/libxml2/2.9.4... OK 
Running 'configure' for libxml2 2.9.4... OK 
Running 'compile' for libxml2 2.9.4... ERROR, review '/Library/Ruby/Gems/2.0.0/gems/nokogiri-1.6.8/ext/nokogiri/tmp/x86_64-apple-darwin15/ports/libxml2/2.9.4/compile.log' to see what happened. Last lines are: 
======================================================================== 
    "_libiconv", referenced from: 
     _xmlIconvWrapper in libxml2.a(encoding.o) 
    "_libiconv_close", referenced from: 
     _xmlFindCharEncodingHandler in libxml2.a(encoding.o) 
     _xmlCharEncCloseFunc in libxml2.a(encoding.o) 
    "_libiconv_open", referenced from: 
     _xmlFindCharEncodingHandler in libxml2.a(encoding.o) 
    "_lzma_auto_decoder", referenced from: 
     _xz_head in libxml2.a(xzlib.o) 
    "_lzma_code", referenced from: 
     _xz_decomp in libxml2.a(xzlib.o) 
    "_lzma_end", referenced from: 
     ___libxml2_xzclose in libxml2.a(xzlib.o) 
    "_lzma_properties_decode", referenced from: 
     _is_format_lzma in libxml2.a(xzlib.o) 
ld: symbol(s) not found for architecture i386 
clang: error: linker command failed with exit code 1 (use -v to see invocation) 
make[2]: *** [xmllint] Error 1 
make[1]: *** [all-recursive] Error 1 
make: *** [all] Error 2 
======================================================================== 
*** 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_portile2-2.1.0/lib/mini_portile2/mini_portile.rb:366:in `block in execute': Failed to complete compile task (RuntimeError) 
    from /Library/Ruby/Gems/2.0.0/gems/mini_portile2-2.1.0/lib/mini_portile2/mini_portile.rb:337:in `chdir' 
    from /Library/Ruby/Gems/2.0.0/gems/mini_portile2-2.1.0/lib/mini_portile2/mini_portile.rb:337:in `execute' 
    from /Library/Ruby/Gems/2.0.0/gems/mini_portile2-2.1.0/lib/mini_portile2/mini_portile.rb:111:in `compile' 
    from /Library/Ruby/Gems/2.0.0/gems/mini_portile2-2.1.0/lib/mini_portile2/mini_portile.rb:150:in `cook' 
    from extconf.rb:364:in `block (2 levels) in process_recipe' 
    from extconf.rb:257:in `block in chdir_for_build' 
    from extconf.rb:256:in `chdir' 
    from extconf.rb:256:in `chdir_for_build' 
    from extconf.rb:363:in `block in process_recipe' 
    from extconf.rb:262:in `tap' 
    from extconf.rb:262:in `process_recipe' 
    from extconf.rb:555:in `<main>' 

To see why this extension failed to compile, please check the mkmf.log which can be found here: 

    /Library/Ruby/Gems/2.0.0/extensions/universal-darwin-15/2.0.0/nokogiri-1.6.8/mkmf.log 

extconf failed, exit code 1 

Gem files will remain installed in /Library/Ruby/Gems/2.0.0/gems/nokogiri-1.6.8 for inspection. 
Results logged to /Library/Ruby/Gems/2.0.0/extensions/universal-darwin-15/2.0.0/nokogiri-1.6.8/gem_make.out 

Когда я использую Админы-MBP: ~ админ $ Sudo камень установить nokogiri -v '1.6.7.2'

Password: 
Fetching: mini_portile2-2.0.0.gem (100%) 
Successfully installed mini_portile2-2.0.0 
Fetching: nokogiri-1.6.7.2.gem (100%) 
Building native extensions. This could take a while... 
ERROR: Error installing nokogiri: 
    ERROR: Failed to build gem native extension. 

    current directory: /Library/Ruby/Gems/2.0.0/gems/nokogiri-1.6.7.2/ext/nokogiri 
/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/ruby -r ./siteconf20160703-32388-1almq9.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. 
Using mini_portile version 2.0.0 
checking for iconv.h... yes 
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 
    - 0003-Stop-parsing-on-entities-boundaries-errors.patch 
    - 0004-Cleanup-conditional-section-error-handling.patch 
    - 0005-CVE-2015-1819-Enforce-the-reader-to-run-in-constant-.patch 
    - 0006-Another-variation-of-overflow-in-Conditional-section.patch 
    - 0007-Fix-an-error-in-previous-Conditional-section-patch.patch 
    - 0008-CVE-2015-8035-Fix-XZ-compression-support-loop.patch 
    - 0009-Updated-config.guess.patch 
    - 0010-Fix-parsering-short-unclosed-comment-uninitialized-access.patch 
    - 0011-Avoid-extra-processing-of-MarkupDecl-when-EOF.patch 
    - 0012-Avoid-processing-entities-after-encoding-conversion-.patch 
    - 0013-CVE-2015-7497-Avoid-an-heap-buffer-overflow-in-xmlDi.patch 
    - 0014-CVE-2015-5312-Another-entity-expansion-issue.patch 
    - 0015-Add-xmlHaltParser-to-stop-the-parser.patch 
    - 0016-Detect-incoherency-on-GROW.patch 
    - 0017-CVE-2015-7500-Fix-memory-access-error-due-to-incorre.patch 
    - 0018-CVE-2015-8242-Buffer-overead-with-HTML-parser-in-pus.patch 
    - 0019-Do-not-print-error-context-when-there-is-none.patch 
    - 0020-xmlStopParser-reset-errNo.patch 
    - 0021-Reuse-xmlHaltParser-where-it-makes-sense.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-darwin15/ports/libxml2/2.9.2... OK 
Running git apply with /Library/Ruby/Gems/2.0.0/gems/nokogiri-1.6.7.2/patches/libxml2/0001-Revert-Missing-initialization-for-the-catalog-module.patch... OK 
Running git apply with /Library/Ruby/Gems/2.0.0/gems/nokogiri-1.6.7.2/patches/libxml2/0002-Fix-missing-entities-after-CVE-2014-3660-fix.patch... OK 
Running git apply with /Library/Ruby/Gems/2.0.0/gems/nokogiri-1.6.7.2/patches/libxml2/0003-Stop-parsing-on-entities-boundaries-errors.patch... OK 
Running git apply with /Library/Ruby/Gems/2.0.0/gems/nokogiri-1.6.7.2/patches/libxml2/0004-Cleanup-conditional-section-error-handling.patch... OK 
Running git apply with /Library/Ruby/Gems/2.0.0/gems/nokogiri-1.6.7.2/patches/libxml2/0005-CVE-2015-1819-Enforce-the-reader-to-run-in-constant-.patch... OK 
Running git apply with /Library/Ruby/Gems/2.0.0/gems/nokogiri-1.6.7.2/patches/libxml2/0006-Another-variation-of-overflow-in-Conditional-section.patch... OK 
Running git apply with /Library/Ruby/Gems/2.0.0/gems/nokogiri-1.6.7.2/patches/libxml2/0007-Fix-an-error-in-previous-Conditional-section-patch.patch... OK 
Running git apply with /Library/Ruby/Gems/2.0.0/gems/nokogiri-1.6.7.2/patches/libxml2/0008-CVE-2015-8035-Fix-XZ-compression-support-loop.patch... OK 
Running git apply with /Library/Ruby/Gems/2.0.0/gems/nokogiri-1.6.7.2/patches/libxml2/0009-Updated-config.guess.patch... OK 
Running git apply with /Library/Ruby/Gems/2.0.0/gems/nokogiri-1.6.7.2/patches/libxml2/0010-Fix-parsering-short-unclosed-comment-uninitialized-access.patch... OK 
Running git apply with /Library/Ruby/Gems/2.0.0/gems/nokogiri-1.6.7.2/patches/libxml2/0011-Avoid-extra-processing-of-MarkupDecl-when-EOF.patch... OK 
Running git apply with /Library/Ruby/Gems/2.0.0/gems/nokogiri-1.6.7.2/patches/libxml2/0012-Avoid-processing-entities-after-encoding-conversion-.patch... OK 
Running git apply with /Library/Ruby/Gems/2.0.0/gems/nokogiri-1.6.7.2/patches/libxml2/0013-CVE-2015-7497-Avoid-an-heap-buffer-overflow-in-xmlDi.patch... OK 
Running git apply with /Library/Ruby/Gems/2.0.0/gems/nokogiri-1.6.7.2/patches/libxml2/0014-CVE-2015-5312-Another-entity-expansion-issue.patch... OK 
Running git apply with /Library/Ruby/Gems/2.0.0/gems/nokogiri-1.6.7.2/patches/libxml2/0015-Add-xmlHaltParser-to-stop-the-parser.patch... OK 
Running git apply with /Library/Ruby/Gems/2.0.0/gems/nokogiri-1.6.7.2/patches/libxml2/0016-Detect-incoherency-on-GROW.patch... OK 
Running git apply with /Library/Ruby/Gems/2.0.0/gems/nokogiri-1.6.7.2/patches/libxml2/0017-CVE-2015-7500-Fix-memory-access-error-due-to-incorre.patch... OK 
Running git apply with /Library/Ruby/Gems/2.0.0/gems/nokogiri-1.6.7.2/patches/libxml2/0018-CVE-2015-8242-Buffer-overead-with-HTML-parser-in-pus.patch... OK 
Running git apply with /Library/Ruby/Gems/2.0.0/gems/nokogiri-1.6.7.2/patches/libxml2/0019-Do-not-print-error-context-when-there-is-none.patch... OK 
Running git apply with /Library/Ruby/Gems/2.0.0/gems/nokogiri-1.6.7.2/patches/libxml2/0020-xmlStopParser-reset-errNo.patch... OK 
Running git apply with /Library/Ruby/Gems/2.0.0/gems/nokogiri-1.6.7.2/patches/libxml2/0021-Reuse-xmlHaltParser-where-it-makes-sense.patch... 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.7.2/ext/nokogiri/tmp/x86_64-apple-darwin15/ports/libxml2/2.9.2/compile.log' to see what happened. Last lines are: 
======================================================================== 
    "_gzwrite", referenced from: 
     _xmlGzfileWrite in libxml2.a(xmlIO.o) 
    "_inflate", referenced from: 
     _xmlNanoHTTPRead in libxml2.a(nanohttp.o) 
    "_inflateEnd", referenced from: 
     _xmlNanoHTTPFreeCtxt in libxml2.a(nanohttp.o) 
    "_inflateInit2_", referenced from: 
     _xmlNanoHTTPScanAnswer in libxml2.a(nanohttp.o) 
    "_libiconv", referenced from: 
     _xmlIconvWrapper in libxml2.a(encoding.o) 
    "_libiconv_close", referenced from: 
     _xmlFindCharEncodingHandler in libxml2.a(encoding.o) 
     _xmlCharEncCloseFunc in libxml2.a(encoding.o) 
    "_libiconv_open", referenced from: 
     _xmlFindCharEncodingHandler in libxml2.a(encoding.o) 
ld: symbol(s) not found for architecture i386 
clang: error: linker command failed with exit code 1 (use -v to see invocation) 
make[2]: *** [xmllint] Error 1 
make[1]: *** [all-recursive] Error 1 
make: *** [all] Error 2 
======================================================================== 
*** 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_portile2-2.0.0/lib/mini_portile2/mini_portile.rb:366:in `block in execute': Failed to complete compile task (RuntimeError) 
    from /Library/Ruby/Gems/2.0.0/gems/mini_portile2-2.0.0/lib/mini_portile2/mini_portile.rb:337:in `chdir' 
    from /Library/Ruby/Gems/2.0.0/gems/mini_portile2-2.0.0/lib/mini_portile2/mini_portile.rb:337:in `execute' 
    from /Library/Ruby/Gems/2.0.0/gems/mini_portile2-2.0.0/lib/mini_portile2/mini_portile.rb:111:in `compile' 
    from /Library/Ruby/Gems/2.0.0/gems/mini_portile2-2.0.0/lib/mini_portile2/mini_portile.rb:150:in `cook' 
    from extconf.rb:289:in `block (2 levels) in process_recipe' 
    from extconf.rb:182:in `block in chdir_for_build' 
    from extconf.rb:181:in `chdir' 
    from extconf.rb:181:in `chdir_for_build' 
    from extconf.rb:288:in `block in process_recipe' 
    from extconf.rb:187:in `tap' 
    from extconf.rb:187:in `process_recipe' 
    from extconf.rb:478:in `<main>' 

To see why this extension failed to compile, please check the mkmf.log which can be found here: 

    /Library/Ruby/Gems/2.0.0/extensions/universal-darwin-15/2.0.0/nokogiri-1.6.7.2/mkmf.log 

extconf failed, exit code 1 

Gem files will remain installed in /Library/Ruby/Gems/2.0.0/gems/nokogiri-1.6.7.2 for inspection. 
Results logged to /Library/Ruby/Gems/2.0.0/extensions/universal-darwin-15/2.0.0/nokogiri-1.6.7.2/gem_make.out 

другая ошибка

Admins-MBP:~ admin$ sudo gem install nokogiri -- --use-system-libraries --with-xslt-dir=/usr/local/opt/libxslt --with-iconv-dir=/usr/local/opt/libiconv --with-xml2-dir=/usr/local/opt/libxml2 --with-xml2-config=/usr/local/opt/libxml2/bin/xml2-config --with-xml2-include=/usr/local/opt/libxml2/include/libxml2 --with-xslt-config=/usr/local/opt/libxslt/bin/xslt-config 
Password: 
Building native extensions with: '--use-system-libraries --with-xslt-dir=/usr/local/opt/libxslt --with-iconv-dir=/usr/local/opt/libiconv --with-xml2-dir=/usr/local/opt/libxml2 --with-xml2-config=/usr/local/opt/libxml2/bin/xml2-config --with-xml2-include=/usr/local/opt/libxml2/include/libxml2 --with-xslt-config=/usr/local/opt/libxslt/bin/xslt-config' 
This could take a while... 
ERROR: Error installing nokogiri: 
    ERROR: Failed to build gem native extension. 

    current directory: /Library/Ruby/Gems/2.0.0/gems/nokogiri-1.6.8/ext/nokogiri 
/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/ruby -r ./siteconf20160703-514-1ycei3y.rb extconf.rb --use-system-libraries --with-xslt-dir=/usr/local/opt/libxslt --with-iconv-dir=/usr/local/opt/libiconv --with-xml2-dir=/usr/local/opt/libxml2 --with-xml2-config=/usr/local/opt/libxml2/bin/xml2-config --with-xml2-include=/usr/local/opt/libxml2/include/libxml2 --with-xslt-config=/usr/local/opt/libxslt/bin/xslt-config 
Using pkg-config version 1.1.7 
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 libexslt... no 
ERROR: cannot discover where libxml2 is located on your system. please make sure `pkg-config` is installed. 
*** 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 
    --with-xml2-include=${xml2-dir}/include 
    --with-xml2-lib 
    --without-xml2-lib=${xml2-dir}/lib 
    --with-xslt-dir 
    --with-xslt-include 
    --without-xslt-include=${xslt-dir}/include 
    --with-xslt-lib 
    --without-xslt-lib=${xslt-dir}/lib 
    --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-pkg-config 
    --without-pkg-config 
    --with-pkg-config 
    --without-pkg-config 
    --with-override-variables 
    --without-override-variables 

To see why this extension failed to compile, please check the mkmf.log which can be found here: 

    /Library/Ruby/Gems/2.0.0/extensions/universal-darwin-15/2.0.0/nokogiri-1.6.8/mkmf.log 

extconf failed, exit code 1 

Gem files will remain installed in /Library/Ruby/Gems/2.0.0/gems/nokogiri-1.6.8 for inspection. 
Results logged to /Library/Ruby/Gems/2.0.0/extensions/universal-darwin-15/2.0.0/nokogiri-1.6.8/gem_make.out 
+0

Не могли бы вы также просмотреть журнал ошибок 'gem install nokogiri'? –

+0

@Harsh Trivedi Я добавил его выше – nik

ответ

4

Я просто была такая же проблема. Рассмотрите возможность установки rbenvhttps://github.com/rbenv/rbenv, что позволяет легко переключаться между установленными версиями Ruby. С помощью rbenv вы можете загрузить/установить практически любую версию Ruby, а затем установить механический Gem.

-ИЛИ-

Выполнить эту команду для CL инструментов:

$ xcode-select --install 

Вам будет предложено установить инструменты или получить эту ошибку:

xcode-select: error: command line tools are already installed, use "Software Update" to install updates 

пробеге эти команды для установки Gem (используйте sudo по своему усмотрению):

gem update --system 
gem uninstall nokogiri 
echo "gem: -n/usr/local/bin" >> ~/.gemrc 
sudo chown -R $(whoami):admin /usr/local 
sudo gem install nokogiri -n/usr/local/bin -v '1.6.3.1' -- --with-opt-include=$(xcrun --show-sdk-path)/usr/include 
sudo gem install mechanize 

Mechanize требует минимальной версии 1.6, так Nokogiri 1.6.3.1 будет работать: https://github.com/sparklemotion/mechanize/blob/master/mechanize.gemspec#L56


Для дальнейших вопросов см:

+0

Я получаю сообщение об ошибке с вашим решением, пожалуйста, смотрите выше – nik

+0

Я получаю ошибку за три команды, которые вы дали. Ошибка: нет такого бочонка:/usr/local/Cellar/libxml2 – nik

+0

Я использовал ваше решение, и я получил еще одну ошибку. Пожалуйста, смотрите выше! Кажется, что он не хочет быть установленным: (( – nik

1

I have tried sudo...

1) Для проверки загрузки необходимо установить gpgTools.

2) Установить rvm (Ruby Version Manager):

$ gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 
$ \curl -sSL https://get.rvm.io | bash -s stable 

2) Используйте RVM установить собственную копию рубина (НЕ ИСПОЛЬЗОВАТЬ SUDO):

$ rvm install 2.3.1 

3) Установите все драгоценные камни в свою копию рубина - без ошибок (НЕ ИСПОЛЬЗУЙТЕ SUDO):

Если вы когда-либо использовали sudo при выдаче какой-либо из приведенных выше команд, отрубите один из ваших пальцев. Когда вы закончите одной рукой, вы получите ее.

+0

Почему я должен использовать sudo? Мне понравился ваш ответ, но вышеупомянутый ответ решил мою проблему, поэтому я не знаю, смогу ли я получить меня где-нибудь. однако, я ценю ваше время, – nik

+0

Принесите свою руку Я хочу отрубить руку OFF :-D, Админы-MBP: ~ admin $ gpg --keyserver hkp: //keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 - bash: gpg: команда не найдена – nik