github-pages的bundle更新失败

时间:2016-02-01 11:53:39

标签: ruby-on-rails ruby nokogiri bundler github-pages

我正在尝试按https://help.github.com/articles/using-jekyll-with-pages/所述运行bundle update来更新Mac OS X 10.11.1上的github-pages gem。我收到这个错误......

pschloss@polypay schlosslab.github.io (master) $ bundle update
Fetching gem metadata from https://rubygems.org/............
Fetching version metadata from https://rubygems.org/...
Fetching dependency metadata from https://rubygems.org/..
Resolving dependencies...
Using RedCloth 4.2.9
Using i18n 0.7.0
Using json 1.8.3
Using minitest 5.8.4
Using thread_safe 0.3.5
Using addressable 2.3.8
Using blankslate 2.1.2.4
Using fast-stemmer 1.0.2
Using coffee-script-source 1.10.0
Using execjs 2.6.0
Using colorator 0.1
Using ffi 1.9.10
Using multipart-post 2.0.0
Using gemoji 2.1.0
Using net-dns 0.8.0
Using public_suffix 1.5.3
Using jekyll-paginate 1.1.0
Using sass 3.4.21
Using rb-fsevent 0.9.7
Using kramdown 1.9.0
Using liquid 2.6.2
Using mercenary 0.3.5
Using posix-spawn 0.3.11
Using yajl-ruby 1.2.1
Using redcarpet 3.3.3
Using safe_yaml 1.0.4
Using jekyll-feed 0.3.1
Using mini_portile2 2.0.0
Using jekyll-sitemap 0.9.0
Using maruku 0.7.0
Using rdiscount 2.1.8
Using terminal-table 1.5.2
Using bundler 1.11.2
Using tzinfo 1.2.2
Using parslet 1.5.0
Using classifier-reborn 2.0.4
Using coffee-script 2.4.1
Using ethon 0.8.1
Using rb-inotify 0.9.5
Using faraday 0.9.2
Using jekyll-sass-converter 1.3.0
Using pygments.rb 0.6.3
Installing nokogiri 1.6.7.2 with native extensions

Gem::Ext::BuildError: ERROR: Failed to build gem native extension.

    current directory: /Users/pschloss/Documents/websites/schlosslab.github.io/vendor/bundle/ruby/2.0.0/gems/nokogiri-1.6.7.2/ext/nokogiri
/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/ruby -r ./siteconf20160201-14595-1a3dixy.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... no
-----
libiconv 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
    --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

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

  /Users/pschloss/Documents/websites/schlosslab.github.io/vendor/bundle/ruby/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 /Users/pschloss/Documents/websites/schlosslab.github.io/vendor/bundle/ruby/2.0.0/gems/nokogiri-1.6.7.2 for inspection.
Results logged to /Users/pschloss/Documents/websites/schlosslab.github.io/vendor/bundle/ruby/2.0.0/extensions/universal-darwin-15/2.0.0/nokogiri-1.6.7.2/gem_make.out
Using activesupport 4.2.5.1
Using toml 0.1.2
Using jekyll-coffeescript 1.0.1
Using typhoeus 0.8.0
Using listen 3.0.5
Using sawyer 0.6.0
An error occurred while installing nokogiri (1.6.7.2), and Bundler cannot continue.
Make sure that `gem install nokogiri -v '1.6.7.2'` succeeds before bundling.

正如它建议的那样,然后我运行gem install nokogiri -v '1.6.7.2'并安装得很好。我重复bundle update并得到与以前相同的错误。当我nokogiri --version时,它返回1.6.7.2:

$ nokogiri --version
# Nokogiri (1.6.7.2)
    ---
    warnings: []
    nokogiri: 1.6.7.2
    ruby:
      version: 2.3.0
      platform: x86_64-darwin15
      description: ruby 2.3.0p0 (2015-12-25 revision 53290) [x86_64-darwin15]
      engine: ruby
    libxml:
      binding: extension
      source: packaged
      libxml2_path: "/Users/pschloss/.gem/ruby/2.3.0/gems/nokogiri-1.6.7.2/ports/x86_64-apple-darwin15.0.0/libxml2/2.9.2"
      libxslt_path: "/Users/pschloss/.gem/ruby/2.3.0/gems/nokogiri-1.6.7.2/ports/x86_64-apple-darwin15.0.0/libxslt/1.1.28"
      libxml2_patches:
      - 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
      libxslt_patches:
      - 0001-Adding-doc-update-related-to-1.1.28.patch
      - 0002-Fix-a-couple-of-places-where-f-printf-parameters-wer.patch
      - 0003-Initialize-pseudo-random-number-generator-with-curre.patch
      - 0004-EXSLT-function-str-replace-is-broken-as-is.patch
      - 0006-Fix-str-padding-to-work-with-UTF-8-strings.patch
      - 0007-Separate-function-for-predicate-matching-in-patterns.patch
      - 0008-Fix-direct-pattern-matching.patch
      - 0009-Fix-certain-patterns-with-predicates.patch
      - 0010-Fix-handling-of-UTF-8-strings-in-EXSLT-crypto-module.patch
      - 0013-Memory-leak-in-xsltCompileIdKeyPattern-error-path.patch
      - 0014-Fix-for-bug-436589.patch
      - 0015-Fix-mkdir-for-mingw.patch
      - 0016-Fix-for-type-confusion-in-preprocessing-attributes.patch
      - 0017-Updated-config.guess.patch
      compiled: 2.9.2
      loaded: 2.9.2

有什么建议吗?这似乎不是一个nokogiri问题,而是一个github页面或捆绑问题(当然,我也可能是问题!)

4 个答案:

答案 0 :(得分:2)

问题在于扩展程序构建过程由于某种原因无法找到libiconv

周围的每个人似乎都建议为RubyGems使用额外的参数,但问题明确指出gem单独实际安装有问题的宝石就好了。因此,这与 Bundler 宝石束的配置方式有关。

  • 您可以通过using bundle config将配置应用于此特定包

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

    这大致告诉Bundler"无论何时安装nokogiri,都要添加--use-system-libraries"。

  • ...然后继续:

    bundle update
    

this answer 背后的优秀人士致谢。

答案 1 :(得分:0)

您的捆绑包尝试将gem安装到vendor/bundle而不是系统宝石中,这意味着您可能已尝试--path vendor/bundle--deployment - 请参阅cat .bundle/config

您可以通过运行bundle install --system

来回归使用系统宝石

答案 2 :(得分:0)

请尝试以下代码。

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

答案 3 :(得分:0)

我认为在你和你之前,许多程序员面临同样的问题。解决了这个问题,如果您在 final EditText emailedittext = (EditText) findViewById(R.id.emailedittext); findViewById(R.id.btnSelect).setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { if (TextUtils.isEmpty(emailedittext.getText().toString())) { emailedittext.setError("Please enter email id"); } else { // if (emailid is not proper/valid) { // emailedittext.setError("Please enter valid Email id"); // } else { // // Correct email // } } } }); 上提出任何要求,请确保此类问题是否存在。无论如何try this

<img src='http://futhead.cursecdn.com/static/img/16/clubs/"<?php echo  $_GET['nation_id'] ?>"' > 

谢谢