不能在Ubuntu上安装json gem与ruby 2.2.3

我正在浏览一个Rails教程,由于json gem的问题,我无法完成“bundle install”。 当我尝试直接安装它时:

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 

如前所述,Ruby版本是2.2.3。

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

运行“gem list”显示json 1.8.1目前已经安装,但默认的Gemfile中的东西必须要求1.8.3。 search显示了许多类似的问题,但没有答案让我通过这个问题。 我试图与sudo运行,它似乎工作,但回到我这个问题仍然存在。

cannot find -lgmp表示找不到gmp库。 尝试运行:

 sudo apt-get install libgmp3-dev 

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

Json 1.8.3似乎在Ruby 2.2.3上有一些问题(尽pipe我预计未来的一些Ruby补丁可能会解决这个问题)。 降级Ruby到2.2.2为我工作。

(也就是说, sudo apt-get install libgmp3-dev ,就像@alf 提示的那样 – 但是如果你不能这么做的话,那么降级ruby可能是一个可行的select。

尝试运行rvm implode ,然后按照本指南http://ryanbigg.com/2014/10/ubuntu-ruby-ruby-install-chruby-and-you/

我怀疑RVM没有为您提供正确的标题。