Einer meiner Entwickler hat Nokogiri aktualisiert, und beim Abrufen der aktualisierten Gemfile schlägt mein bundle install
fehl.
➜ my-project git:(master) bundle install
Fetching source index from https://rubygems.org/
Using rake 10.4.2
Using i18n 0.7.0
Using json 1.8.3
Using minitest 5.8.3
Using thread_safe 0.3.5
Using tzinfo 1.2.2
Using activesupport 4.2.3
Using builder 3.2.2
Using erubis 2.7.0
Using mini_portile2 2.0.0
Gem::Ext::BuildError: ERROR: Failed to build gem native extension.
/Users/me/.rvm/rubies/Ruby-2.1.2/bin/Ruby 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.
libxml2 version 2.6.21 or later is required!
*** 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=/Users/me/.rvm/rubies/Ruby-2.1.2/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
extconf failed, exit code 1
Gem files will remain installed in /Users/me/.rvm/gems/[email protected]/gems/nokogiri-1.6.7 for inspection.
Results logged to /Users/me/.rvm/gems/[email protected]/extensions/x86_64-darwin-13/2.1.0-static/nokogiri-1.6.7/gem_make.out
An error occurred while installing nokogiri (1.6.7), and Bundler cannot continue.
Make sure that `gem install nokogiri -v '1.6.7'` succeeds before bundling.
Wie in " Nokogiri gem " nicht installiert, habe ich erfolglos versucht zu laufen:
bundle config build.nokogiri --use-system-libraries
bundle install
Wie in " Nokogiri gem " nicht installiert, habe ich auch versucht:
gem install nokogiri -- --use-system-libraries
und:
gem install nokogiri -v 1.6.5 -- --use-system-libraries
Meine Betriebssystemversion ist El Capitan 10.11.2. Ich habe überprüft, ob die Xcode-Lizenzvereinbarung akzeptiert wurde.
Haben Sie Ideen, wie Sie die Nokogiri-Installation zum Erfolg führen können?
Sie sollten zuerst xcode-select
-Pakete installieren und dann erneut versuchen, nokogiri zu installieren. Versuchen Sie diese Befehle,
xcode-select --install
dann versuche es
gem install nokogiri
mit jeder beliebigen Nokogiri-Version, die Sie möchten.
Nokogiri benötigt mehrere Bibliotheken wie libxslt, libxml und zlib. Entwicklerversionen (einschließlich Quellcode) sollten vor der Installation von Nokogiri in einer Linux-Distribution installiert werden. Für OS X sollte der obige Befehl funktionieren, denke ich.
Die tatsächliche Lösung ist in den Kommentaren unten.
Versuche dies :
gem install nokogiri -- --use-system-libraries --with-xml2-include=/usr/include/libxml2 --with-xml2-lib=/usr/lib/
Und dann renn
bundle update
Ich hoffe das könnte dir helfen :)
Wenn Sie Homebrew verwenden, um Bibliotheken wie libml auf Ihrem Mac zu verwalten, kann der folgende Befehl auf Ihrem Mac hilfreich sein:
gem install nokogiri -v '1.6.8' -- --use-system-libraries --with-xml2-include=/usr/local/Cellar/libxml2/2.9.2/include/libxml2 --with-xml2-lib=/usr/local/Cellar/libxml2/2.9.2/lib/
stellen Sie nur sicher, dass der Pfad für libxml der von mir ist, es sei denn, das Brew ändert sich mit der nächsten Version. Sie können dies überprüfen, indem Sie den folgenden Befehl ausführen:
brew info libxml2
Fügen Sie gem "nokogiri", ">= 1.6.7.rc3"
in Ihr Gemfile hinzu
und dann rennen
bundle install
versuchen zu:
apt-get install Ruby-nokogiri
bundle install
Die folgenden Schritte haben für mich funktioniert
Ruby -v
Ruby 2.0.0p247 (2013-06-27 revision 41674) [universal.x86_64-darwin13]
Run the following to install RVM and the latest stable version of Ruby:
\curl -L https://get.rvm.io | bash -s stable --Ruby
Install the Ruby interpreter:
rvm install 2.1.0 --autolibs=enable
After that's finished installing, run:
source /Users/{your_user_name}/.rvm/scripts/rvm
Run:
Ruby -v
Ruby 2.1.0p76 (2014-02-24 revision 45161) [x86_64-darwin13.0]
==> Sudo gem install bundler
Fetching: bundler-1.14.6.gem (100%)
Successfully installed bundler-1.14.6
Parsing documentation for bundler-1.14.6
Installing ri documentation for bundler-1.14.6
Done installing documentation for bundler after 4 seconds
1 gem installed
Vielen Dank für das Posten! Ich habe endlich nokogirl mit bundle install
für meine App richtig laufen lassen, nachdem ich Folgendes ausgeführt habe:
bundle config build.nokogiri --use-system-libraries
Durch die Aktualisierung von Xcode und Command Line Tools wurden alle Fehler für mich behoben. Danach konnte ich Nokogiri mit gem install nokogiri installieren und danach installierten Rails einwandfrei.