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

Не удается установить жемчужину JSON в рельсах, используя окна

Я делаю установку пакета, и все драгоценные камни работают отлично, за исключением JSON, когда он попадает на жемчужину JSON. Я получаю эту ошибку.

Installing json (1.6.1) with native extensions c:/Ruby192/lib/ruby/site_ruby/1.9.1/rubygems/installer.rb:55
    2:in `rescue in block in build_extensions': ERROR: Failed to build gem native extension. (Gem::Installer::E
    xtensionBuildError)

            c:/Ruby192/bin/ruby.exe extconf.rb
    checking for re.h... *** extconf.rb failed ***
    Could not create Makefile due to some reason, probably lack of
    necessary libraries and/or headers.  Check the mkmf.log file for more
    details.  You may need configuration options.

Любая идея о том, что может вызвать эту ошибку?

4b9b3361

Ответ 1

Вы работаете с Windows, поэтому RubyInstaller Development Kit может помочь вам: http://rubyinstaller.org/add-ons/devkit/

Devkit устанавливает C-компилятор (и некоторые другие) для компиляции C-написанных частей.

Установите его и повторите попытку установки драгоценного камня - возможно, с опцией --platform=ruby.

Подробности можно найти на https://github.com/oneclick/rubyinstaller/wiki/Development-Kit

Ответ 2

Это потому, что этот драгоценный камень использует кусок кода, написанный на C. Для правильной работы вам нужно c-компилятор, установленный на вашем компьютере. В качестве способа попробуйте использовать json_pure, написанный на чистом Ruby

Ответ 3

Я не эксперт в ROR, но проблема установки JSON, которую я получил при установке Redmine, была решена, выполнив следующие действия:

  • Создайте make.bat в папке D:\LANGS\MinGW\bin
  • Сохраните этот каталог в папке
  • Отредактируйте приведенный выше make.bat и добавьте строку, D:\LANGS\MinGW\msys\1.0\bin\make.exe

Я понял, что mingw32-make.exe никогда не работал, но работало D:\LANGS\MinGW\msys\1.0\bin\make.exe.

Примечание. Моя установка MinGW находится в папке D:\LANGS \. Внесите соответствующие изменения в вашу конкретную установку.

Ответ 4

Да, установите комплект разработчика. Кроме того, вам нужно будет запустить несколько команд для его установки (а не просто загрузить и запустить).

Загрузите его, запустите его, чтобы извлечь его где-нибудь (постоянным). Затем cd к нему запустите ruby ​​dk.rb init и ruby ​​dk.rb install, чтобы связать его с рубиновыми установками на вашем пути.

Руководство для этого:

https://github.com/oneclick/rubyinstaller/wiki/Development-Kit