Instalar Ruby on Rails en Windows 7

En el momento de escribir este artículo:
Versión de Ruby : 1.9.2
Versión de RubyGems : 1.3.7
Versión de Rails : 3.0.0

Según la página de RoR la instalación es coser y cantar, sin embargo la realidad es algo diferente. La teoría, según http://rubyonrails.org/download es:
1. Descargar el instalador de Ruby y ejecutarlo.
2. Descargar RubyGems e instalarlo usando el comando «ruby setup.rb» en la carpeta que acabamos de descomprimir.
3. Instalar Rails mediante RubyGems ejecutando el comando «gem install rails».

En la práctica, el paso 1 funciona sin problemas, pero al intentar instalar RubyGems nos encontramos con el error:

«source_index.rb:68:in `installed_spec_directories’: undefined method `path’ for Gem:Module (NoMethodError)»

Después de dar muchas vueltas averigüé que el problema es que Ruby 1.9.2 ya viene con RubyGems de serie, por lo que el intento de reinstalación falla. Solución: Simplemente obviar la instalación de RubyGems. Simple, ¿no?, espero haberte ahorrado varias horas de revisión de código, lectura de foros, etc.

Bien, el siguiente paso es instalar Rails, lo cual va como la seda.

Una vez instalado, sin embargo, cuando intentemos poner en marcha nuestro primero proyecto después de crearlo y cuando ya pensábamos que estaba todo ganado, el sistema nos volverá a sorprender con otro mensaje de error:

«Could not find sqlite3-ruby-1.3.1-x86-mingw32 in any of the sources»

Este es fácil de solucionar, Ruby nos informa que sqlite no está instalado, y como es el servidor de BD por defecto, se queja. Ejecutando:

gem install sqlite3-ruby

queda solucionado. Sin embargo la impaciencia nos hará volver a intentar lanzar nuestro proyecto, así que es muy posible que obtengamos el nuevo error :

«sqlite3-ruby-1.3.1-x86-mingw32/lib/sqlite3.rb:6:in `require’: no such file to load — sqlite3/sqlite3_native (LoadError)»

Otra vez volví a dar muchas vueltas hasta que me di cuenta de que al instalar sqlite3, el sistema me había informado que las DLLs necesarias para poder ejecutar este módulo (gem) están en http://www.sqlite.org/sqlitedll-3_6_23_1.zip, es decir la instalación del módulo mediante «gem install» no es suficiente, además hay que instalar una dll manualmente. Así que descargamos ese fichero, lo descomprimimos y copiamos su contenido en la carpeta bin de nuestra instalación de Ruby, que en mi caso es c:\Ruby192\bin\. Una vez hecho esto, podremos por fin poner nuestro servidor Webrick en marcha y comenzar a trabajar simplemente ejecutando:

rails server

Espero que sea de utilidad. ¡Y happy Railing!

Share this post

Related post

  1. Julio 2010.10.02 11:20pm

    Excelente post, estos cambios empezaron cuando salió la version 3 de Rails, en versiones anteriores no había ningún problema…

    Gracias

    Julio

  2. Juanfer 2010.10.05 7:41am

    Hola Julio,
    es posible, yo hasta ahora sólo había trabajado con Rails en Linux prácticamente sin incidencias. Mi primer contacto con Rails en Windows fue el que dio pie a este post. Me alegro de que te haya ayudado.

  3. fedes 2010.10.11 1:05am

    funcionó !!!

    muchas gracias!!!!!

    fede

  4. Juanfer 2010.10.11 8:09am

    ¡cuanto me alegro!

  5. putxi 2010.10.30 3:04pm

    Justo lo que buscaba gracias !!!

  6. Juanfer 2010.10.30 5:09pm

    Me alegro. De nada.

  7. Gius 2010.11.12 7:52am

    La verdad que funcionó al toque. Muchísimas gracias! no había empezado a desarrollar en Rails 3 porque nunca pude instalarlo ni sobre Windows ni sobre Linux jaja, siempre un problema diferente y terminaba desistiendo.
    Un abrazo!

  8. Juanfer 2010.11.12 9:09am

    Sí, es una pena que a veces resulte tan confusa la instalación. Me alegro de que te sirvieran estas instrucciones. Otro abrazo.

  9. Renato Fabiano 2010.12.07 7:03pm

    Tube todos los problemas que usted escribió.
    Ahora funcionana ok.

    Mis versiones:
    sqllite: 3.7.3
    rails: 3.0.3

    !Muchisimas gracias de Brasil!

  10. Felipe 2010.12.24 11:02pm

    Segui cada paso.
    y problema solucionado

  11. Albert 2011.02.07 11:11pm

    Yo he instalado ruby (1.9.2) y MySQL (6.0) en Windows7. Todo bien hasta que debo hacer Ruby script\server (siguiendo el tutorial http://oreilly.com/pub/a/ruby/archive/rails.html?page=2) y entonces me da un error:
    «No such file or directory –script/server »

    Soy nuevo en esto y no sé que debo hacer. Agradeceré cualquier ayuda.

    Saludos,
    Albert

  12. Juanfer 2011.02.11 9:13am

    Hola Albert, en este caso lo importante no es tanto la versión de Ruby sino la de Rails. Por lo que comentas supongo que estarás usando la versión 3.0.x, en cuyo caso debes reemplazar las llamadas a «ruby script\xxx» por «rails xxx», es decir, en tu caso: rails server, desde la carpeta raíz en la que estés desarrollando tu aplicación. Espero que te sea de utilidad.

  13. YAYO 2011.03.28 12:39pm

    Genial el post paa salir de dudas con sqlite y gem

    Gracias

  14. Adan 2011.03.31 2:02am

    No mi hermano, a mi no me funciono en windows 7, se me trabo la compu instalando el rail y ahora me da un error al querer instalar de nuevo.

    Se pego al instalar la documentacion, supuestamente instalo bien el rail 3.0.5 pero da error al querer instalar la documentacion.

    Ayuda…Gracias

  15. Adan 2011.03.31 2:04am

    ruby 1.9.2p180 (2011-02-18) [i386-mingw32]

    C:\Users\Adan>gem install rails
    Successfully installed rails-3.0.5
    1 gem installed
    Installing ri documentation for rails-3.0.5…
    ERROR: While executing gem … (TypeError)
    incompatible marshal file format (can’t be read)
    format version 4.8 required; 0.0 given

  16. Juanfer 2011.03.31 4:30pm

    Hola Adan, no me he topado con ese problema nunca. En estos momentos no tengo mucho tiempo para ayudarte a investigarlo, pero veo que estás usando la ultimísima versión de Rails y de Ruby, con las que por el momento no he probado. ¿Y si lo intentas con la versión previa de Rails?. Si encuentras una solución te agradeceré que nos la cuentes. Un saludo y suerte.

  17. Mauro 2011.07.02 1:23am

    Todos los problemas que mencionaste los tuve. Gracias a este artículo pude por fin instalar sin problemas.

    Muchas gracias!!!

  18. rakenuke 2011.07.22 3:30pm

    si, el post me ha sido de mucha ayuda, caramba, llevaba un tiempo dando cabezazos con el famoso error, pero bueno, ya no mas, verdad. Nada, muchas gracias bro!

  19. hjev 2011.08.13 8:41pm

    Tengo problemas con esto
    gem install mysql2
    por favor su ayuda

  20. Juanfer 2011.08.14 8:08pm

    Con esa descripción del problema no se puede hacer nada. Por favor especifica un poco más. Un saludo.

  21. Angel 2011.09.09 10:44am

    Hola amigos, estoy usando una versión de rails 3.0.x reemplaze la llamada a “ruby script\xxx” por “rails xxx” para crear un controler:
    e:\rails\cookbook>rails generate controller MyTest
    create app/controllers/my_test_controller.rb
    invoke erb
    create app/views/my_test
    invoke test_unit
    create test/functional/my_test_controller_test.rb
    invoke helper
    create app/helpers/my_test_helper.rb
    invoke test_unit
    create test/unit/helpers/my_test_helper_test.rb
    invoke assets
    invoke coffee
    create app/assets/javascripts/my_test.js.coffee
    invoke scss
    create app/assets/stylesheets/my_test.css.scss

    y todo muy bien hasta ahí, pero al tratar de llamar desde el navegador (Firefox 6) a ese controller no lo consigue !…
    Qué estara pasando ?
    Nota: tengo el servidor activo.
    e:\rails\cookbook>rails server
    => Booting WEBrick
    => Rails 3.1.0 application starting in development on http://0.0.0.0:3000
    => Call with -d to detach
    => Ctrl-C to shutdown server
    [2011-09-09 04:34:22] INFO WEBrick 1.3.1
    [2011-09-09 04:34:22] INFO ruby 1.9.2 (2011-02-18) [i386-mingw32]
    [2011-09-09 04:34:22] INFO WEBrick::HTTPServer#start: pid=5272 port=3000

  22. Angel 2011.09.09 10:51am

    Ruta ingresada:

    http://localhost:3000/MyTest/

    Mensaje mostrado en el Navegador:

    Routing Error
    No route matches [GET] «/MyTest»

    Saludos

  23. mauricio guglielmi 2012.02.10 10:15pm

    Gracias Master, me salvaste

  24. moises 2013.01.31 10:21pm

    simplemente tu blog de programacion es exelente amigo felicitaciones si algun dia nos encontramos te debo un favor enorme

  25. Juanfer 2013.02.03 1:10pm

    Hola Moisés. Me alegro de que te haya servido el artículo a pesar de que a estas alturas ya se ha quedado un poco anticuado.

  26. Axel 2013.03.11 10:42pm

    Bueno pues yo estoy empezando con ruby pero como me habian contado antes que daba muchos problemas busque la forma de encontrar una pagina que me dijera que hacer. Y me encontre con tu pagina y pues la verdad espero que no tenga ningún problema en el futuro.

  27. angela 2013.04.24 5:17am

    Holas, soy nueva en ruby, pues mi version de ruby instalado es: 2.0 y pues cuando hago: rails s, me sale cannot load such file — sqlite3/sqlite3_native (LoadError)

  28. ruben 2013.05.08 1:49pm

    Gracias ! bien explicado

  29. migumu 2014.09.29 1:05pm

    Hola amigo:

    Ante todo el tutorial muy bueno, con el he podido isntalar ruby.
    Pero tengo un problema a la hora de lanzarlo.

    He hecho «c:> rails new nombre_proy» y me ha creado la app.
    Pero cuando hago «c:> rails server» me muestra la ayuda de rails y no se muy bien que hacer. También he probado con «c:> rails s»

    ¿Podríais ayudarme para poder comenzar?

    Muchas gracias

  30. Juanfer 2014.10.07 10:57am

    Hola!, ¿qué versión de ruby y de rails has instalado?. Quizá tengas algún problema en el PATH del sistema.
    Esta es la documentación oficial del comando de línea «rails» :

    http://guides.rubyonrails.org/command_line.html

    Y como puedes ver, a fecha de hoy, «rails server» sigue siendo la manera de levantar webrick… La verdad es que no sé cuál puede ser el problema aparte del PATH.

  31. Jose Luis Licari 2016.06.03 2:16pm

    Buenas, te comento que recien empiezo con ruby on rails, quiero instalarlo en window 7 para ello utilizo railsinstaller hasta ahi todo bien cuando termina va a la consola de window para que ingrese el nombre y el mail, pero me da error y no me deja pasar de ahi me dice que el archivo .gitconfig no se pudo crear, probe de mil maneras y no hay caso, desde ya mucha gracias

  32. Juanfer 2016.06.03 2:27pm

    Hola José Luis. La verdad es que hace mucho que dejé Windows atrás, pero por lo que comentas parece ser que simplemente te has atascado en un paso que no es obligatorio: asociar tu aplicación con un repositorio Git. En cualquier caso parece un problema de permisos…

{ Piensa / Think }

"This is a waste of life. [...] the entire educational system in the modern day is nothing more than a cookie cutter processing plant that prepares humans for mostly predefined occupational roles. This element of human life has become so traditionally ingrained, that many falsely consider the nature of ‘having a job’ some form of human instinct. Even parents will ask their kids “What do you want to be when you grow up?” as though there was only one thing. This is disturbing and a violation of human potential." - The Zeitgeist Movement


"He aprendido que hay cosas que pueden ser comprendidas pero que nunca podrán ser explicadas con palabras sin desvirtuar su grandeza" - Andrés Pascual


"You never change things by fighting the existing reality. To change something, build a new model that makes the existing model obsolete." - Buckminster Fuller


"... I am the master of my fate. I am the captain of my soul." - William Ernest Henley