Не могу установить json gem в Windows

Я попытался установить драгоценный камень json в Windows. Я установил DevKit. Я получаю следующую ошибку ниже. Какие-либо предложения? Этот вопрос

JSON Gem не будет установлен (Windows)

предлагает установить DevKit, а также попробовать использовать json_pure. Я сделал оба. Проблема в том, что моя установка пакета пытается установить json и не будет продолжаться, пока json не будет установлен. Кстати, это пакетная установка для проекта Rails.

d:\source\my_project>gem install json -v '1.6.3'
Temporarily enhancing PATH to include DevKit...
Building native extensions.  This could take a while...
ERROR:  Error installing json:
        ERROR: Failed to build gem native extension.

    C:/Ruby200/bin/ruby.exe extconf.rb
creating Makefile

make
generating parser-i386-mingw32.def
compiling parser.c
In file included from parser.rl:1:0:
../fbuffer/fbuffer.h:129:13: warning: 'fbuffer_append_long' defined but not used [-Wunused-function]
../fbuffer/fbuffer.h:136:17: warning: 'fbuffer_dup' defined but not used [-Wunused-function]
../fbuffer/fbuffer.h:149:14: warning: 'fbuffer_to_s' defined but not used [-Wunused-function]
../fbuffer/fbuffer.h:90:13: warning: 'fbuffer_append_str' defined but not used [-Wunused-function]
linking shared-object json/ext/parser.so

make install
/usr/bin/install -c -m 0755 parser.so C:/Ruby200/lib/ruby/gems/2.0.0/gems/json-1.6.3/ext/json/ext/json/ext
/usr/bin/install: cannot create regular file `C:/Ruby200/lib/ruby/gems/2.0.0/gems/json-1.6.3/ext/json/ext/json/ext': No such file or directory
make: *** [install-so] Error 1


Gem files will remain installed in C:/Ruby200/lib/ruby/gems/2.0.0/gems/json-1.6.3 for inspection.
Results logged to C:/Ruby200/lib/ruby/gems/2.0.0/gems/json-1.6.3/ext/json/ext/parser/gem_make.out

person TinyGrasshopper    schedule 17.04.2013    source источник


Ответы (3)


У меня тоже была эта проблема, решил это, выполнив следующее:

Использование Ruby версии – 2.2.2

Версия Gem — 2.3.0 (если у вас установлена ​​последняя версия Gem, вы можете перейти на более раннюю версию с помощью команды — gem update --system 2.3.0)

Обратите внимание, что даже если у вас 64-разрядная система Windows, загрузите и распакуйте 32-разрядный комплект разработчика (DevKit-mingw64-32-4.7.2-20130224-1151-sfx.exe) из здесь

После извлечения добавьте путь к devkit и mingw\bin в переменную пути. Перейдите в каталог devkit и выполните приведенные ниже команды.

ruby dk.rb init

ruby dk.rb install

Наконец, перезапустите командную строку и попробуйте

gem install json

Это сработало для меня. Надеюсь это поможет.

person Prakash    schedule 06.12.2015

Пришлось использовать версию 1.7.7. Я не знаю почему, но кажется, что он совместим с вашей рубиновой версией. Сделайте: gem install json -v '1.7.7'

person Juan Giménez    schedule 02.05.2013

В моей ситуации я загружаю неправильную версию Ruby (32-битную), но использую 64-битные окна => возникает ошибка. Первое, что вам нужно, это проверить, правильно ли работает комплект разработки.

gem install json --platform=ruby

если это не работает, вы должны следовать приведенному ниже руководству, чтобы заставить его работать. https://github.com/oneclick/rubyinstaller/wiki/Development-Kit

И после этого вы можете установить json gem в обычном режиме. Я думаю. Удачи.

person Nhat Dinh    schedule 06.03.2015