Impossible d’installer json gem avec ruby ​​2.2.3 sur Ubuntu

Je suis en train de passer par un didacticiel Rails et je ne suis pas en mesure de terminer une «installation groupée» en raison d’un problème avec la gem json. Lorsque je tente de l’installer directement:

me@tru2:~/rails/hello_app$ gem install json -v '1.8.3' Building native extensions. This could take a while... ERROR: Error installing json: ERROR: Failed to build gem native extension. /home/me/.rvm/rubies/ruby-2.2.3-dev/bin/ruby -r ./siteconf20150820-12793-qdkev7.rb extconf.rb creating Makefile make "DESTDIR=" clean make "DESTDIR=" compiling generator.c linking shared-object json/ext/generator.so /usr/bin/ld: cannot find -lgmp collect2: error: ld returned 1 exit status make: *** [generator.so] Error 1 make failed, exit code 2 Gem files will remain installed in /home/me/.rvm/gems/ruby-2.2.3-dev/gems/json-1.8.3 for inspection. Results logged to /home/me/.rvm/gems/ruby-2.2.3-dev/extensions/x86_64-linux/2.2.0/json-1.8.3/gem_make.out 

Comme mentionné, la version ruby ​​est 2.2.3.

 me@tru2:~/rails/hello_app$ ruby --version ruby 2.2.3p173 (2015-08-18 revision 51636) [x86_64-linux] 

L’exécution de ‘gem list’ indique que json 1.8.1 est actuellement installé, mais que quelque chose dans le fichier Gemfile par défaut doit exiger 1.8.3. Une recherche a révélé de nombreuses questions similaires, mais aucune réponse ne m’a permis de surmonter ce problème. J’ai essayé de courir avec sudo et cela semble fonctionner, mais le problème est toujours là.

cannot find -lgmp signifie qu’il ne peut pas trouver la bibliothèque gmp. Essayez de courir:

 sudo apt-get install libgmp3-dev 

https://github.com/flori/json/issues/253

Json 1.8.3 semble avoir des problèmes avec Ruby 2.2.3 (bien que je m’attende à ce que certains futurs correctifs de Ruby résolvent probablement le problème). La mise à niveau vers Ruby 2.2.2 a fonctionné pour moi.

(Cela dit, sudo apt-get install libgmp3-dev , comme suggéré par @alf) , mais si vous ne pouvez pas le faire, la réduction de la taille de ruby ​​pourrait être une alternative possible.)

Essayez d’exécuter rvm implode , puis suivez ce guide http://ryanbigg.com/2014/10/ubuntu-ruby-ruby-install-chruby-and-you/

Je soupçonne que RVM n’a pas inclus les en-têtes corrects pour vous.