La tarea de instalar ruby 2.0 en el último Ubuntu 14.04 me parece bastante frustrante. Soy consciente de que podría renunciar a los paquetes e instalarlos desde el origen, pero preferiría instalar un paquete, si eso es posible.
Encontré esta pregunta / respuesta sobre ruby en 13.10, que se parecía a lo que quería.
Desafortunadamente, la estrategia no parece viable: el paquete ruby-switch se eliminó en 14.04.
http://www.ubuntuupdates.org/package/core/trusty/universe/base/ruby-switch
La eliminación del paquete hace referencia a un error que, para mí, parece no tener ninguna relación.
Me desconcierta por qué instalar ruby2.0 usando apt-get instala ruby1.9 y lo convierte en el intérprete de ruby predeterminado. Obtengo un binario ruby2.0, pero los scripts (que dependen de un intérprete 2.0 al ejecutar ruby) no lo captan. Además, cuando uso gem et. Alabama. instalar paquetes de ruby: estos parecen estar instalados para ruby1.9 en lugar de 2.0. Muy insatisfactorio
¿Alguien puede ofrecer una pista sobre la forma más sencilla de instalar ruby 2.0 como intérprete de ruby estándar? ¿Cómo se espera que cambie de ruby 1.9 a 2.0 sin ruby-switch?
fuente
La versión Debian de Ruby no admite varias instalaciones de ruby en el mismo sistema. Debian obsoleto el paquete y Ubuntu simplemente lo eliminó de los repositorios. Debe usar
rbenv
para cambiar entre diferentes versiones de ruby. Esta es la forma recomendada por la descripción del paquete ruby-switch y fue el método que se ha discutido en el error 737782 como preferido, ya que se dice que no debería haber más de una versión de ruby en los repositorios.Ruby 2.0 se instala de forma predeterminada al instalar el
ruby2.0
paquete y no se necesita ninguna otra acción. Siruby
se instaló el paquete, se recomienda eliminarlo. Debe tener el binario/usr/bin/ruby2.0
disponible en su sistema.fuente
fuente
ln -fs
forzar la actualización y evitar usar el siempre aterradorrm -rf
Si desea cambiar entre rubíes, le recomiendo usar rvm ( https://rvm.io ). Es un administrador de paquetes y le permite instalar muchos rubíes diferentes (no solo los de Matz) en una máquina, ya sea local para el usuario o global para todos los usuarios.
Sé que pediste un "paquete", así que quizás esto no te funcione. Pero pensé que podría ayudar si esta es su máquina de desarrollo.
El beneficio de hacerlo de esta manera es que puede instalar un gemset para 2.1.1 y otros para 2.0 o 1.9.3, etc. También le permite probar jruby, rubinius, etc. sin comprometer su sistema a uno.
No lo estoy usando en producción, pero aparentemente es adecuado para eso y para el desarrollo.
Aquí está el inicio rápido: https://rvm.io/rvm/install
fuente
Al final del juego, pero creo que una solución quizás más completa que los enlaces simbólicos de codificación dura es este uso
update-alternatives
, publicado aquí de forma detallada en caso de que otros sean mordidos por la misma frustración y deseen una solución más nativa. Esto maneja todos los binarios y páginas de manual, eliminando preventivamente las referencias primero para evitar conflictos.Advertencias:
update-alternatives
lo que es posible que esto sea excesivo y / o se haga a la ligera.Guión (lo nombré
fix-ruby-alternatives.sh
):fuente
${RECMD}
y${CMD}
sin comillas, en lugar de usareval
. En otra nota: voy a pedir prestado "a regañadientes". :)