La gem nativa ‘json’ requiere herramientas de comstackción instaladas

Tengo ruby 1.9.2p180 (2011-02-18) [i386-mingw32] instalado en mi máquina con Windows 7. Ahora traté de instalar la gem JSON usando el comando “gem install json” y obtuve el siguiente error.

 ERROR: Error installing JSON: The 'json' native gem requires installed build tools. Please update your PATH to include build tools or download the DevKit from '[http://rubyinstaller.org/downloads][1]' and follow the instructions at '[http://github.com/oneclick/rubyinstaller/wiki/Development-Kit][2]' 

Luego fui y descargué DevKit-4.5.0-20100819-1536-sfx.exe. Lo extrajo a C: \ DevKit. Y luego, desde el símbolo del sistema, ejecuté los siguientes comandos.

 ruby dk.rb init 

Después de que se ejecuta el comando anterior, verifiqué que config.yaml se genera y tiene la ruta para mi carpeta de ruby ​​agregada automáticamente. Esta es la línea en la parte inferior del archivo config.yaml “- C: / Ruby192”

 ruby dk.rb review 

Recibí el mensaje de que la funcionalidad devkit se inyectará en los rubies cuando ejecute “ruby dk.rb install”

 ruby dk.rb install 

Recibí el siguiente mensaje.

 [INFO] RubyGems override already in place for C:/Ruby192, skipping. [INFO] Installing C:/Ruby192/lib/ruby/site_ruby/devkit.rb 

Ahora traté de ejecutar la gem JSON nuevamente usando el comando gem install json . Luego recibí el mismo mensaje de error que antes.

 ERROR: Error installing JSON: The 'json' native gem requires installed build tools......... 

¿Me estoy perdiendo de algo?

Creo que esos instaladores hacen cambios en el camino. ¿Intentó cerrar y volver a abrir la ventana de CMD después de ejecutarlos y antes del último bash de instalar la gem que quiere que devkit esté presente?

Además, asegúrese de estar utilizando el instalador devkit correcto para su versión de Ruby. La documentación en la página wiki de devkit tiene una nota de requisitos que dice:

Para las versiones de RubyInstaller 1.8.7, 1.9.2 y 1.9.3 use DevKit 4.5.2

Siga las instrucciones de Ruby Installer Developer Kit Wiki :

  1. Descarga Ruby 1.9.3 desde rubyinstaller.org
  2. Descargue el archivo DevKit de rubyinstaller.org
    • Para Ruby 1.9.3, use DevKit-tdm-32-4.5.2-20110712-1620-sfx.exe
  3. Extraiga DevKit a la ruta C: \ Ruby193 \ DevKit
  4. Ejecute cd C:\Ruby193\DevKit
  5. Ejecute ruby dk.rb init
  6. Ejecute la ruby dk.rb review
  7. Ejecute ruby dk.rb install

Para volver al problema en cuestión, debe poder instalar JSON (o probar que su DevKit se instaló correctamente) ejecutando los siguientes comandos que realizarán una instalación de la joya JSON y luego la usarán:

 gem install json --platform=ruby ruby -rubygems -e "require 'json'; puts JSON.load('[42]').inspect" 

Descubrí que el error a veces es causado por una biblioteca faltante.

Entonces, si instala RDOC primero ejecutando

joya instalar rdoc

luego instale los Rails con:

gem instalar Rails

luego regrese e instale devtools como se mencionó anteriormente con:

1) Extraiga DevKit a la ruta C:\Ruby193\DevKit
2) cd C:\Ruby192\DevKit
3) ruby dk.rb init
4) ruby dk.rb review
5) ruby dk.rb install

luego intenta instalar json

que culmina con finalmente poder correr

rails new project_name – sin errores.

buena suerte

Siguió los pasos.

  1. Extraiga DevKit a la ruta C:\Ruby193\DevKit
  2. cd C:\Ruby192\DevKit
  3. ruby dk.rb init
  4. ruby dk.rb review
  5. ruby dk.rb install

Entonces escribí el comando

 gem install rails -r -y 

1) Descargar Ruby 1.9.3

2) cmd check comando: ruby -v ‘return result ruby ​​1.9.3 luego éxito full install ruby

3) Descargue el archivo DevKit desde http://rubyinstaller.org/downloads (DevKit-tdm-32-4.5.2-20110712-1620-sfx.exe)

4) Extraiga DevKit a la ruta C: \ Ruby193 \ DevKit

5) cd C:\Ruby193\DevKit

6) ruby dk.rb init

7) ruby dk.rb review

8) ruby dk.rb install

9) cmd: gem install rails -v3.1.1 ‘pocas veces instalando proceso completo’

10) cmd: rails -v ‘return result rails 3.1.1 entonces su éxito se instala por completo’

disfruta Ruby on Rails …

Me gustaría añadir que debe asegurarse de que el archivo config.yml generado al hacer ruby dk.rb init contenga la ruta a la instalación de Ruby con la que desea usar DevKit. En mi caso, tenía instalado Heroku Toolbelt en mi sistema, que proporcionaba su propia instalación de Ruby, ubicada en un lugar diferente. El archivo config.yml usó esa instalación en particular, y eso no es lo que yo quería. Tuve que editar manualmente el archivo para ruby dk.rb review al correcto, luego continuar con la ruby dk.rb review , etc.

Mi solución es más simple y comprobada en Ruby 2.0. También permite descargar Json. (ejecuta CMD.exe como administrador)

  C:\RubyDev>devkitvars.bat Adding the DevKit to PATH... 

Y luego escribe nuevamente el comando gem.

Mi gem versión 2.0.3 y yo recibíamos el mismo problema. Este comando lo resolvió:

 gem install json --platform=ruby --verbose