Не могу установить JSON Gem в Windows

Я пытался установить JSON Gem на 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

3 ответа

I had this problem too, solved this by doing this:

Using Ruby version - 2.2.2

Gem version - 2.3.0 (if you have the latest gem version install you can downgrade using command - gem update --system 2.3.0)

Обратите внимание, что даже если вы используете 64-битную систему Windows, скачайте и распакуйте 32-битный devkit (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

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

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

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

gem install json --platform=ruby

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

И после этого вы можете установить JSON Gem Normaly. Я думаю. Удачи.

Другие вопросы по тегам