J'ai rencontré ce problème lorsque j'exécute bundle install
avec Ruby version 2.4.4 et macOS Mojave:
Fetching nokogiri 1.8.5
Installing nokogiri 1.8.5 with native extensions
Gem::Ext::BuildError: ERROR: Failed to build gem native extension.
ERROR: cannot discover where libxml2 is located on your system. please
make sure `pkg-config` is installed.
Alors j'ai couru
xcode-select --install
Mais quand je lance gem install nokogiri
J'ai obtenu la sortie suivante:
ERROR: While executing gem ... (TypeError)
incompatible marshal file format (can't be read)
format version 4.8 required; 60.33 given
J'ai essayé de régler mon cookies_serializer
à :hybrid
:
Rails.application.config.action_dispatch.cookies_serializer = :hybrid
Mais rien n'a fonctionné.
Y'a t'il un moyen d'arranger cela? Je ne peux même pas exécuter mon serveur Rails pour le moment.
Grâce à la réponse de Morgan Jarry, c'est ce qui a fonctionné pour moi:
J'ai vérifié mes sources actuelles et en effet elles étaient dépassées:
gem sources
Il a imprimé
*** CURRENT SOURCES ***
http://gems.rubyforge.org/
http://gems.github.com
J'ai donc exécuté ce script pour les supprimer et les ai remplacés par https://rubygems.org/
gem sources -r http://gems.rubyforge.org/
gem sources -r http://gems.github.com
gem sources -a https://rubygems.org/
Essayez de supprimer votre ~/.gemrc
. J'ai eu le même problème sur Mojave et cela résout mon problème.
Vous devez supprimer toutes les sources de gemmes que vous avez et ajouter à la place https://rubygems.org/ . Notez que http://gems.rubyforge.org/ et http://gems.github.com sont définitivement morts et doivent être supprimés. Vous pouvez répertorier vos sources en exécutant:
gem sources
Vous devriez obtenir quelque chose comme ceci:
*** CURRENT SOURCES ***
//gems.rubyforge.org/
//gems.github.com
1) Supprimer toutes les sources:
gem sources -r http://gems.rubyforge.org/
gem sources -r http://gems.github.com
2) Ajoutez la bonne source:
gem sources -a https://rubygems.org/
J'espère que cela t'aides!