Подтвердить что ты не робот

Не удается установить json gem с ruby ​​2.2.3 на Ubuntu

Я просматриваю учебник Rails, и я не могу завершить "установку пакета" из-за проблемы с json gem. Когда я пытаюсь установить его напрямую:

[email protected]:~/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

Как упоминалось, рубиновая версия - 2.2.3.

[email protected]:~/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. Поиск показал много похожих вопросов, но никаких ответов, которые заставили меня пройти мимо этой проблемы. Я пробовал работать с sudo и, похоже, работает, но, возвращаясь ко мне, проблема все еще существует.

4b9b3361

Ответ 1

cannot find -lgmp означает, что он не может найти библиотеку gmp. Попробуйте запустить:

sudo apt-get install libgmp3-dev

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

Ответ 2

У Json 1.8.3, похоже, есть некоторые проблемы с Ruby 2.2.3 (хотя я ожидаю, что некоторые будущие патчи Ruby, вероятно, исправят проблему). Для меня работал понижающий рейтинг Ruby до 2.2.2.

(Тем не менее, sudo apt-get install libgmp3-dev, как @alf , но если вы " не в состоянии это сделать, понижающий рубин может оказаться приемлемой альтернативой.)