web-dev-qa-db-fra.com

Problème de Nokogiri v 1.8.1 lors de l’exécution de l’installation groupée

Lors de l'exécution de Bundle Install ou de Gem Install, je rencontre le même problème qui empêche mon application de s'exécuter. Je soupçonne que ce problème est local et est dû au fait que tout a été déplacé vers Rails 5, mais je ne suis pas sûr. Voici le message d'erreur:

An error occurred while installing nokogiri (1.8.1), and Bundler cannot
continue.
Make sure that `gem install nokogiri -v '1.8.1'` succeeds before bundling.

In Gemfile:
  Rails_admin was resolved to 1.2.0, which depends on
    Rails was resolved to 5.1.3, which depends on
      actioncable was resolved to 5.1.3, which depends on
        actionpack was resolved to 5.1.3, which depends on
          actionview was resolved to 5.1.3, which depends on
            Rails-dom-testing was resolved to 2.0.3, which depends on
              nokogiri

(Cela vient de l'exécution de Bundle Install) J'ai essayé d'exécuter Bundle Update et d'utiliser diverses commandes Homebrew recommandées par Github, mais je n'ai pas eu de succès. 

gem installer nokogiri -v '1.8.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.
7
user7406101

Nokogiri ne parvient pas à construire normalement car vous n’avez pas de bibliothèques de développement comme libxml2. Consultez le fichier journal pour voir ce qui se passe ou essayez d'installer libxml2 directement avec brew install libxml2

Voir le guide de lecture fourni par Nokogiry à http://www.nokogiri.org/tutorials/installing_nokogiri.html

5
TlmaK0

(pour UBUNTU) Essayez d'abord de le faire 

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

puis essayez d'installer.

9
Thialyson Martins

Voici les étapes qui pourraient vous aider à résoudre ce problème:

  1. gem update —system

  2. Installez les outils de ligne de commande Xcode: xcode-select —install

  3. Enfin maintenant, installez Nokogiri: gem install nokogiri

2
Cyzanfar

libxml2 et zlib est requis pour la construction, vous devez installer les deux.

Feutre:

Sudo dnf install libxml2-devel zlib-devel

Ubuntu:

Sudo apt install libxml2-dev zlib1g-dev 
1
MrRolling

Je ne fais que publier la solution que j'ai trouvée (le même problème se présentait sous MacOS). Avec cela, la gem sera installée en utilisant les bibliothèques système, ce qui devrait résoudre le problème rencontré.

  1. Si vous utilisez gem :
gem install nokogiri -- --use-system-libraries
 [--with-xml2-config=/path/to/xml2-config]
 [--with-xslt-config=/path/to/xslt-config]
  1. Si vous utilisez bundle :
bundle config build.nokogiri --use-system-libraries
bundle install
1
cbaillat

Avait le même problème après avoir mis à jour Xcode

Je devais exécuter: Sudo xcode-select --switch /Library/Developer/CommandLineTools/ then: Sudo bundle install --system

Après cela, tout allait bien.

0
Mr. Rene

Si vous utilisez MAC OSVous pouvez essayer de 

brew unlink xz
gem install nokogiri
brew link xz

J'utilise MAC OS et j'utilise brew install Ruby pour éviter de gâcher l'environnement Ruby du système. Le bundle install suivant se passe très bien.

0
Menglong Li

Sur High Sierra (et Mojave), cela a fonctionné pour moi

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

bundle update

bundle install
0
user5783745