it-swarm.com.de

Fehler beim Installieren von nokogiri: Fehler beim Erstellen der nativen Gem-Erweiterung & libiconv (OSX)

Ich versuche, dieses Repo zu klonen und bundle install auszuführen. Der Bundle-Prozess ist fehlgeschlagen und wirft diesen Fehler aus:

    ...
    Installing nokogiri 1.6.2.1 with native extensions
    Building nokogiri using packaged libraries.

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

        /Users/zulhilmizainudin/.rvm/rubies/Ruby-2.2.0/bin/Ruby -r ./siteconf20151130-43880-pntnc6.rb extconf.rb
    Building nokogiri using packaged libraries.
    -----
    libiconv is missing.  please visit http://nokogiri.org/tutorials/installing_nokogiri.html for help with installing dependencies.
    -----
    *** 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/zulhilmizainudin/.rvm/rubies/Ruby-2.2.0/bin/$(Ruby_BASE_NAME)
        --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

    extconf failed, exit code 1

    Gem files will remain installed in /Users/zulhilmizainudin/.rvm/gems/Ruby-2.2.0/gems/nokogiri-1.6.2.1 for inspection.
    Results logged to /Users/zulhilmizainudin/.rvm/gems/Ruby-2.2.0/extensions/x86_64-darwin-14/2.2.0-static/nokogiri-1.6.2.1/gem_make.out
    An error occurred while installing nokogiri (1.6.2.1), and Bundler cannot continue.
    Make sure that `gem install nokogiri -v '1.6.2.1'` succeeds before bundling.

Dann versuche ich das auszuführen:

gem install nokogiri -v '1.6.2.1'

Und jetzt bekomme ich diesen Fehler:

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

    /Users/zulhilmizainudin/.rvm/rubies/Ruby-2.2.0/bin/Ruby -r ./siteconf20151130-43942-1axq4sj.rb extconf.rb
Building nokogiri using packaged libraries.
-----
libiconv is missing.  please visit http://nokogiri.org/tutorials/installing_nokogiri.html for help with installing dependencies.
-----
*** 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/zulhilmizainudin/.rvm/rubies/Ruby-2.2.0/bin/$(Ruby_BASE_NAME)
    --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

extconf failed, exit code 1

Gem files will remain installed in /Users/zulhilmizainudin/.rvm/gems/Ruby-2.2.0/gems/nokogiri-1.6.2.1 for inspection.
Results logged to /Users/zulhilmizainudin/.rvm/gems/Ruby-2.2.0/extensions/x86_64-darwin-14/2.2.0-static/nokogiri-1.6.2.1/gem_make.out

Ich habe versucht, dieser Antwort zu folgen, aber ich bekomme immer noch den gleichen Fehler oben.

Ich versuche auch, mein Gebräu zu deinstallieren und erneut zu installieren ( basierend auf dieser Antwort ).

Ich versuche auch diese Lösung , bekomme aber immer noch den Fehler.

Was muss ich jetzt tun, um sicherzustellen, dass dieser Edelstein erfolgreich installiert wurde?

Hinweis: Ich verwende OSX 10.11.1 El Capitan.

41

Führen Sie diese Befehle aus:

gem uninstall nokogiri
xcode-select --install
gem install nokogiri

quelle: http://www.nokogiri.org/tutorials/installing_nokogiri.html#mac_os_x

manchmal können Mac-Updates die Xcode-CLI beschädigen, sodass eine Neuinstallation das Problem beheben kann: https://github.com/sparklemotion/nokogiri/issues/1445

109
pthamm

Was für mich (auf macOS Sierra) funktionierte, war eine Kombination aus Sams Antwort und dem Folgenden:

gem install nokogiri -- --with-xml2-include=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.12.sdk/usr/include/libxml2 --use-system-libraries
23
spencer.sm

Ich hatte ein ähnliches Problem mit 1.6.7.2, wenn bundle installing auf Codeship mit Ruby 2.3. 

Für mich funktionierte das Hinzufügen

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

vor

bundle install

15
Jay

Wenn Sie Bundle verwenden:

brew install libxml2

# If using Bundle
bundle config build.nokogiri --use-system-libraries \
  --with-xml2-include=$(brew --prefix libxml2)/include/libxml2
bundle install

aus http://www.nokogiri.org/tutorials/installing_nokogiri.html

12
Andy Ray

Ich habe alles in den anderen Antworten gemacht, musste aber noch etwas tun: 

  1. Öffnen Sie Xcode
  2. Klicken Sie auf "Zustimmen".
  3. Warten Sie ein wenig, schließen Sie Xcode
  4. Jubeln
10
Sam Selikoff

Anscheinend ist dies auf ein spezifisches Problem von nokogiri 1.6.2.1 zurückzuführen.

Ich füge dies in meinem Gemfile hinzu:

gem 'nokogiri', '~> 1.6', '>= 1.6.7'

Und bundle update nokogiri und dann bundle ausführen. Jetzt funktioniert alles gut.

4

Versuchen Sie dies

Sudo apt-get install build-essential patch Ruby-dev zlib1g-dev liblzma-dev

nd dann installiere Nokogiri

Sudo gem install nokogiri
3
Lalana Chamika

Es kann auch ein Problem mit der Anaconda-Version einiger Bibliotheken sein.

$ conda deactivate
$ gem uninstall nokogiri
$ gem install nokogiri
$ conda activate base

arbeitete für mich.

2

Spencers Antwort funktionierte für mich, aber ich musste auch den -n-Parameter verwenden, um das dokumentierte Berechtigungsproblem zu überwinden hier.

Am Ende war der Befehl, der für mich funktionierte:

Sudo gem install -n /usr/local/bin nokogiri -- --with-xml2-include=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/libxml2 --use-system-libraries
2
Drew Jex

Ich hatte das ähnliche Problem. Der Grund war xcode veraltet.

Wenn Sie brew doctor ausführen, wird es möglicherweise angezeigt. Öffnen Sie einfach AppStore, gehen Sie zu updates und aktualisieren Sie Ihren Xcode.

0
Alex Miasoiedov

Das Löschen von nokogiri im rbenv gem-Ordner und die Neuinstallation lösten dies für mich.

0

Das hat mir geholfen, das zu beheben

  • Ich habe Xcode neu installiert und xcode-select zu seinem Pfad geleitet
Sudo xcode-select -s /Applications/Xcode.app/Contents/Developer

ref: https://stackoverflow.com/a/17980786/3861525

0
trojanh

Wenn oben nichts funktioniert, löschen Sie Gemfile.lock und Neuinstallation von Edelsteinen.

0
Vineesh N P

Beim Aktualisieren auf Xcode 10 hatte ich dasselbe Problem. Ich habe es mit folgenden Schritten behoben:

  1. xcode-select --install
  2. paket installieren --deployment
  3. gem installieren nokogiri
0
Aks