2011-01-14 21 views
14

Me gustaría instalar el rubí y los rieles más nuevos en mi servidor debian lenny.Cómo instalar ruby ​​1.9.2 en debian lenny?

me encontré con el paquete http://packages.debian.org/lenny-backports/ruby1.9.1-full pero cuando intento instalar con apenas consigo:

atlas:~# apt-get install ruby1.9.1-full 
Reading package lists... Done 
Building dependency tree  
Reading state information... Done 
E: Couldn't find package ruby1.9.1-full 

Mi sources.list es el siguiente:

atlas:~# cat /etc/apt/sources.list 

deb http://ftp.se.debian.org/debian/ lenny main non-free contrib 
deb-src http://ftp.se.debian.org/debian/ lenny main non-free contrib 

deb http://security.debian.org/ lenny/updates main contrib non-free 
deb-src http://security.debian.org/ lenny/updates main contrib non-free 

deb http://volatile.debian.org/debian-volatile lenny/volatile main contrib non-free 
deb-src http://volatile.debian.org/debian-volatile lenny/volatile main contrib non-free 

¿Qué tengo que hacer para conseguirlo instalado?

+0

[superusuario] (http://superuser.com/) podría ser el mejor lugar para preguntar. – vikingosegundo

+0

@vikingosegundo: Estoy de acuerdo. Esto no tiene nada que ver con la programación. Básicamente es "cómo uso mi sistema operativo", que es una pregunta de tipo [SuperUser] (http://SuperUser.Com/), aunque probablemente sea más adecuada para [Unix & Linux StackExchange] (http://Unix.StackExchange.Com/), pero actualmente no hay forma de migrar preguntas allí. –

+0

Hm, está bien, nunca escuché hablar de superusuario hasta ahora, gracias por señalarlo. – Jeena

Respuesta

17

Stop. Regresa. Instale cualquier versión de Ruby Debian, probablemente 1.8.7 o 1.8.7. Luego instala RVM. Tengo algunas instrucciones para using RVM with Ubuntu (lo siento, no es Debian, pero está cerca). En serio, RVM facilita la instalación de cualquier versión de Ruby. Luego, use RVM para instalar Ruby 1.9.2, no desea 1.9.1.

Esto funcionará dependiendo de para qué desee usar Ruby. Para fines de desarrollo, el uso de RVM funciona muy bien. Para fines del servidor, supongo que se puede utilizar, pero es posible que tenga algunos problemas. Creo que RVM le proporciona algunos scripts que puede usar para ejecutar scripts de Ruby con scripts de inicio y trabajos de cron.

O bien, puede simplemente instalar desde la fuente. No es difícil, y no es el camino de Debian, pero hará el trabajo. Esto puede ser preferible a la instalación de paquetes de terceros, donde puede que no tenga idea de lo que hicieron durante el tiempo de compilación, y cómo obtener actualizaciones rápidas en el caso de una vulnerabilidad de seguridad. Usando RVM o instalándolo manualmente desde la fuente, puede actualizar cada vez que sea necesario.

+0

Lo probé desde la fuente durante 2 días. Ruby no es el problema, pero siempre tengo problemas con rubygems o algo así, cuando finalmente conseguí trabajar con gemas e instalar cosas cuando quiero ejecutar un script, siempre dice: "gem_prelude.rb: 114: en' push_gem_version_on_load_path ': método indefinido '<=> 'para nil: NilClass (NoMethodError)" – Jeena

+0

Eso es extraño ... He instalado Ruby muchas veces desde la fuente (y ahora uso RVM exclusivamente, realmente no puedo recomendarlo más), y nunca me he encontrado Cualquier cosa como eso. Pero primero, ¿intentabas instalar 1.9.1? Debido a que 1.9.1 nunca fue ampliamente compatible (era una especie de rama experimental), si quieres un Ruby 1.9.x, deberías usar Ruby 1.9.2. También tenga en cuenta que Ruby 1.9.2 viene con Rubygems ya instalado, por lo que si intenta instalarlo, se encontrará con más problemas. Debería simplemente instalar Ruby 1.9.2 y luego instalar los rieles de instalación gem. Eso es. – AboutRuby

+0

Creo que el problema es que si lo instalo desde el origen, no sé dónde está instalado y, por lo tanto, no uso el comando de gema correcto o algo así. Después de dos días de intentarlo, hay algunas versiones más del mismo nombre en todas partes;) – Jeena

8

primer plazo esto:

apt-get update 

a continuación, instalar Rubí

apt-get install ruby 

Luego hay que rubygems

wget http://rubyforge.org/frs/download.php/60718/rubygems-1.3.5.tgz 

rubygems untar ...

tar xvf rubygems-1.3.5.tgz 
cd rubygems-1.3.5 
ruby setup.rb 
ln -s /usr/bin/gem1.8 /usr/bin/gem 

Ahora actualizar rubygems

gem update --system 

Y ahora podemos instalar rieles

gem install rails 

Puede comprobar si la instalación fue exitosa con los siguientes comandos:

ruby -v 
rails -v 
gem -v 

Si necesita más ¡ayúdame a saber!

Si desea Rubí 1.9.2 reemplazar los siguientes comandos:

apt-get install ruby 

con

apt-get install ruby1.9 

Si necesita las cabeceras dev que sólo se puede instalar ruby1.9-dev.

apt-get install ruby1.9-dev 

Si no puede instalarlos de esta manera, debe consultar sus fuentes de apt-get.

apt-cache search ruby1.9 

libhtree-ruby1.9 - HTML/XML tree library for Ruby 1.9 
.... 
libinotify-ruby1.9 - Ruby interface to Linux's inotify system 
.... 
libdbm-ruby1.9 - DBM interface for Ruby 1.9 
libgdbm-ruby1.9 - GDBM interface for Ruby 1.9 
.... 
**ruby1.9-dev** - Header files for compiling extension modules for the Ruby 1.9 
ruby1.9-elisp - ruby-mode for Emacsen 
ruby1.9-examples - Examples for Ruby 1.9 
**ruby1.9** - Interpreter of object-oriented scripting language Ruby 1.9 
libstfl-ruby1.9 - Ruby bindings for the structured terminal forms language/library 

espero que este helps.And se recomienda usar RVM (pero no lo hice cubierta que aquí ..)

+2

esto instalaría ruby ​​1.8, necesito ruby ​​1.9.2 – Jeena

3

no instale ningún rubíes por Debian, recientemente uno de los mantenedor principal da arriba en ellos: http://www.lucas-nussbaum.net/blog/?p=617 Los rubíes de Debian solían ser feos y, a menudo, rotos, así que la mejor manera de instalarlo es usando rvm, un pequeño programa que administra gemset y diferentes versiones de rubíes en la misma máquina.

2

Si desea instalar un paquete de la backports repositorio de Lenny, es obvio que hay que tenerlo en su sources.list:

deb http://Backports.Debian.Org/debian-backports lenny-backports main contrib non-free 
deb-src http://Backports.Debian.Org/debian-backports lenny-backports main contrib non-free 

Desde los backports no están sujetos a la revisión de calidad estricto normal que otros paquetes son , Ellos están desactivados por defecto. Si desea instalar un paquete desde el repositorio backports, usted tiene que pasar explícitamente la distribución de apt-get o aptitude, al igual que con el repositorio experimental:

apt-get -t lenny-backports install ruby191-full # or 
aptitude -t lenny-backports install ruby191-full 

Puesto que los paquetes adaptados están desactivados por defecto, que ganó' t incluso obtener actualizaciones de seguridad para ellos, a menos que se agrega una colocación de clavos en /etc/apt/preferences:

Package: * 
Pin: release a=lenny-backports 
Pin-Priority: 200 

All of this is clearly spelled out on the Debian Backports website.

Tenga en cuenta que usted debe tener cuidado de no mezclar sistemas de gestión de paquetes. Debe instalar todas las bibliotecas de Ruby a través de APT o a través de RubyGems, pero generalmente no es una buena idea mezclarlas.

Además, si utiliza el paquete RubyGems de Debian, solo debe actualizarlo a través de APT, no a través del mecanismo de actualización incorporado de RubyGems (gem update --system). En realidad, creo que en las versiones actuales, Debian ha eliminado el mecanismo de actualización para evitar esto, pero no siempre fue así.

Personalmente, utilizo los paquetes de Debian Ruby sin problemas en un servidor de producción, y no uso RubyGems en todo, solo uso las bibliotecas de Ruby proporcionadas por Debian.

4

RVM es una gran solución, pero no para entornos de producción. Su magia $ PATH es demasiado quisquillosa y se rompe con demasiada frecuencia.

Sugiero construir un .deb para usted. Compilas Ruby desde el origen y luego lo instalas usando checkinstall. Luego puede distribuir el .deb que crea en cualquier máquina, e instalarlo/desinstalarlo usando dpkg como lo haría con cualquier paquete.

Here's a tutorial que hace esto en Ubuntu; debería traducirse muy fácilmente a Debian.

Cuestiones relacionadas