2010-11-11 19 views
9

Después de instalar Ruby y Ruby gemas:¿Cómo instalar Ruby on Rails 3.0 en Ubuntu 10.10?

$ sudo apt-get install ruby rubygems 
... 
$ ruby -v 
ruby 1.8.7 (2010-06-23 patchlevel 299) [i686-linux] 
$ gem -v 
1.3.7 

Si intento instalar rieles consigo un error, ya pesar de que parece ser la única documentación, rails no está instalado:

$ sudo gem install rails 
... 
Successfully installed rails-3.0.1 
24 gems installed 
... 
Installing ri documentation for builder-2.1.2... 
ERROR: While generating documentation for builder-2.1.2 
... MESSAGE: Unhandled special: Special: type=17, text="<!-- HI -->" 
... RDOC args: --ri --op /var/lib/gems/1.8/doc/builder-2.1.2/ri --title Builder -- Easy XML Building --main README --line-numbers --quiet lib CHANGES Rakefile README doc/releases/builder-1.2.4.rdoc doc/releases/builder-2.0.0.rdoc doc/releases/builder-2.1.1.rdoc --title builder-2.1.2 Documentation 
(continuing with the rest of the installation) 
... 
Installing ri documentation for rails-3.0.1... 
File not found: lib 

$ rails -v 
The program 'rails' is currently not installed. You can install it by typing: 
sudo apt-get install rails 

Los repositorios de Ubuntu solo tienen Rails 2.3.5, por lo que no es una opción.

¿Cómo hago que Rails se instale correctamente?

Actualización: He intentado lo siguiente, ningún error esta vez, pero todavía sin éxito:

$ sudo gem install rails --no-rdoc --no-ri 
Successfully installed rails-3.0.1 
1 gem installed 
$ rails -v 
The program 'rails' is currently not installed... 

Actualización 2: Así, gracias a Maran y Jörg, ahora sé que el problema no es que rails no está instalado, pero no se ha agregado al PATH. Esto se puede solucionar agregando la siguiente a ~/.bashrc:

export PATH=/var/lib/gems/1.8/bin:$PATH 

Eso plantea una pregunta más: Lo que debería haber añadido que a la PATH? ¿Presumiblemente el apt-get install rubygems? ¿Y qué más puede estar roto?

+0

Como dijo @jcm, realmente debería considerar el uso de RVM. Ese es el camino más rápido y fácil hacia la bondad fresca de Ruby and Rails. RVM es todo lo que usaré más porque hace la vida mucho más fácil. –

+0

¿Por qué no simplemente usa synaptic? Instalará el paquete principal con todas las dependencias desinstaladas. – IcyFlame

+0

No en el '11 no fue así. – Tom

Respuesta

6

Ok, dudé en usar rvm ya que parecía estar dirigido a resolver problemas que no tenía intención de tener (¿varias versiones de ruby? Vamos, solo quiero jugar con rieles ...) e instalar desde fuente es generalmente algo que quiero evitar ...

de todos modos, me rendí y seguí junto con http://rvm.beginrescueend.com/rvm/install/

$ bash < <(curl http://rvm.beginrescueend.com/releases/rvm-install-head) 

continuación (en su mayoría sugerido por la salida de los anteriores, pero necesitaba añadir libmysqlclient-dev) :

$ sudo aptitude install build-essential bison openssl libreadline5 \ 
         libreadline5-dev curl git zlib1g zlib1g-dev \ 
         libssl-dev libsqlite3-0 libsqlite3-dev sqlite3 \ 
         libxml2-dev libmysqlclient-dev 

Luego edité mi .bashrc según sea necesario y abrí una nueva terminal.

$ rvm install 1.9.2 
$ rvm --default use 1.9.2 
$ ruby -v 
ruby 1.9.2p0 (2010-08-18 revision 29036) [i686-linux] 
$ gem install rails 
$ rails -v 
Rails 3.0.1 

Después de crear un nuevo proyecto, que todavía tenía algunas cosas que hacer para que funcione:

$ rails new myproject --database=mysql 
$ cd myproject 
$ emacs config/database.yml # set passwords 
$ bundle install 
$ rake db:create 
$ rails server 

Y, por último, todo parece estar funcionando. Espero que eso ayude a otra persona, ciertamente no fue una introducción particularmente agradable a un marco. Reordené los comandos que ingresé para evitar el doble manejo para cualquiera que lo siga.

+0

Vea también: http://ryanbigg.com/2010/12/ubuntu-ruby-rvm-rails-and-you/ – Tom

+0

Intenté esto en ubuntu 10.04. Lo hice: 'rvm install 1.8.7', luego' rvm use --default 1.8.7', luego 'rvm rubygems current', y finalmente:' gem install rails'. instalado un montón de cosas, pero entonces tiene: ERROR: Si bien la generación de documentación de constructor-2.1.2 ... MENSAJE: no controlada especial: Especial: Tipo = 17, text = "" ... RDOC args: --ri --op /opt/standingcloud/.rvm/gems/ruby-1.8.7-p334/doc/builder-2.1.2/ri --title Builder - Easy XML Building --léase README - -line-numbers lib CAMBIOS Rakefile README doc/releases/builder-1.2.4.rdoc doc/releases/builder-2.0.0.rdoc [...] – TrinitronX

+0

@TrinitronX - creo que debería ser 'rvm --uso predeterminado 1.8.7'. Sin eso, probablemente estés usando el rubí incorporado y obtengas el mismo error que cuando intenté instalar rieles sin rvm. – Tom

-1

Necesitará un montón de herramientas de construcción. Busca en Google "install rails 3.0.1 ubuntu" y encontrarás la información. Será algo así como:

apt-get install curl git-core build-essential zlib1g-dev libssl-dev libreadline5-dev 

También se recomienda RVM, que es muy bueno para tener múltiples versiones de Ruby y diferentes conjuntos de gemas, buena para la experimentación y para el uso de diferentes versiones de los carriles en la misma máquina.

+0

rvm también hace compilar rubies extremadamente simple –

+0

Me temo que no ayudó. Solo me faltaba git y libreadline5-dev y no entiendo por qué no serían dependencias de rubygems si fueran necesarios. – Tom

+0

Recuerdo que una página no sirvió sino probar otra página y funcionó ... tal vez alguna información era para Rails 3.0.0 beta. Además ... tal vez rubygems no depende directamente de él, pero algunas de las gemas que construye requieren esas herramientas. También hay muchas gemas que no requieren las herramientas de compilación –

1

Supongo que los rieles están instalados bien, pero la carpeta de gemas de alguna manera no está configurada en su RUTA. Haga una búsqueda algo así como find/-name *rails* | grep bin y verifique si eso arroja algún resultado; de ser así, verifique si los raíles de ruta están ubicados también en su RUTA. (echo $ PATH)

+0

Spot on, está en /var/lib/gems/1.8/bin/rails y /var/lib/gems/1.8/gems/rails-3.0.1/bin/rails – Tom

+0

Ese comando find es complicado, 'find/-name * rails * 2>/dev/null | grep bin' es más manejable. – Tom

2

La versión de Debian de RubyGems instala gemas en /var/lib/gems/1.8/ y binarios de gemas en /var/lib/gems/1.8/bin. Debe asegurarse de que ese directorio esté en su $PATH.

Este es un ejemplo típico de lo que llamo la regla "Si oyes pezuñas, piensa en caballos, no en cebras". Si una computadora te dice que no puede encontrar algo, lo primero que debes buscar es si ese algo realmente está allí, lo segundo es si la computadora está mirando en el lugar correcto. Instalar libreadline5-dev OTOH está muy abajo en el final de la lista & hellip;

En este caso, está indicando que el ordenador ejecute el archivo rails en el $PATH, que simplemente no existe, porque el directorio que se instaló en no está en la $PATH.

+0

Es posible que desee ser un poco más explícito, es decir, agregue "export PATH =/var/lib/gems/1.8/bin: $ PATH" a su ~/.bashrc – Tom

+0

@Tom: cómo administra su '$ PATH' es su negocio, no el míoYo, por ejemplo, prefiero establecerlo en '/ etc/environment' y no en' ~/.bashrc', pero esa es solo mi preferencia personal, y no me gustaría imponerla a nadie. De hecho, no es necesario que lo agregue a '$ PATH' * en absoluto *, simplemente puede llamarlo como'/var/lib/gems/1.8/bin/rails' o crear un 'alias rails =/var/lib/gems/1.8/bin/rails' o lo que sea. Es realmente su elección (y no tiene nada que ver con la pregunta de todos modos). –

11

Le sugiero encarecidamente que omita los paquetes de Ubuntu y use RVM. El proceso de instalación es bastante directo y documented. También hay un Railscast en él.

RVM le permitirá instalar múltiples versiones y crear gemas personalizadas (sin problemas de dependencia).Vale la pena y se está convirtiendo rápidamente en la forma de hecho de desarrollar (y desplegar) con Ruby.

3

prueba a instalar la gema rdoc primera:

gem install rdoc 

Se trabajó para mí usando RVM de rubí 1.8.7 y 3.0.7 carriles

Buena suerte.

+0

Eso no me solucionó el problema. El mismo error aparece. –

+0

Resolvió el problema para mí. (ruby 1.8.7, rieles 3.0.0). – Koteg

+0

Tuve el mismo problema que el póster original de esta pregunta al intentar instalar Ruby 1.8.7-head + rails 3.0.7 a través de rvm en Mac OSX 10.7.4. 'gem install rdoc' solucionó el error. – Imran