Je trouve la tâche d'installer ruby 2.0 sur le dernier Ubuntu 14.04 plutôt frustrante. Je suis conscient que je pourrais renoncer aux packages et installer à partir des sources - mais je préfère de loin installer un package - si cela est possible.
J'ai trouvé cette question / réponse sur ruby le 13.10 - qui ressemblait à ce que je voulais.
Malheureusement, la stratégie ne semble pas viable - le package ruby-switch a été supprimé en 14.04.
http://www.ubuntuupdates.org/package/core/trusty/universe/base/ruby-switch
La suppression du package fait référence à un bogue qui, pour moi, ne semble absolument pas lié.
Je suis perplexe sur la raison pour laquelle l'installation de ruby2.0 à l'aide d'apt-get installe ruby1.9 et en fait l'interpréteur ruby par défaut. J'obtiens un binaire ruby2.0 - mais les scripts (qui dépendent d'un interprète 2.0 lors de l'exécution de ruby) ne le prennent pas. De plus, lorsque j'utilise gem et. Al. pour installer les packages ruby - ceux-ci semblent être installés pour ruby1.9 plutôt que 2.0. Très insatisfaisant.
Quelqu'un peut-il donner un indice sur la façon la plus simple d'installer ruby 2.0 en tant qu'interpréteur ruby standard? Comment dois-je passer de ruby 1.9 à 2.0 sans ruby-switch?
la source
La version Debian de Ruby ne prend pas en charge plusieurs installations Ruby sur le même système. Debian a rendu le paquet obsolète et Ubuntu vient de le supprimer des référentiels. Vous devez utiliser
rbenv
pour basculer entre les différentes versions de rubis. C'est la méthode recommandée par la description du package ruby-switch et c'est la méthode qui a été discutée dans le bogue 737782 comme préférée, car il est dit qu'il ne devrait pas y avoir plus d'une seule version de ruby dans les référentiels.Ruby 2.0 est installé par défaut lors de l'installation du
ruby2.0
package et aucune autre action n'est nécessaire. Si le package aruby
été installé, il est recommandé de le supprimer. Vous devriez avoir le binaire/usr/bin/ruby2.0
disponible sur votre système.la source
la source
ln -fs
forcer la mise à jour et éviter d'utiliser le toujours effrayantrm -rf
Si vous souhaitez basculer entre les rubis, je vous recommande d'utiliser rvm ( https://rvm.io ). C'est un gestionnaire de paquets et il vous permet d'installer de nombreux rubis différents (pas seulement Matz) sur une machine, soit local pour l'utilisateur ou globalement pour tous les utilisateurs.
Je sais que vous avez demandé un «package», alors peut-être que cela ne fonctionnera pas pour vous. Mais j'ai pensé que cela pourrait aider si c'est votre machine de développement.
L'avantage de le faire de cette façon est que vous pouvez installer un jeu de gemmes pour 2.1.1 et d'autres pour 2.0 ou 1.9.3, etc. Il vous permet également de tester jruby, rubinius, etc. sans engager votre système dans un seul.
Je ne l'utilise pas en production, mais apparemment, il convient à cela ainsi qu'au développement.
Voici le démarrage rapide: https://rvm.io/rvm/install
la source
Tard dans le jeu, mais je pense qu'une solution peut-être plus complète que les liens symboliques codés en dur est cette utilisation de
update-alternatives
codés en , publiée ici verbalement au cas où d'autres seraient mordus par la même frustration et souhaiteraient une solution plus native. Cela gère tous les binaires et les pages de manuel, supprimant d'abord les références de manière préventive pour éviter les conflits.Mises en garde:
update-alternatives
donc il est possible que ce soit exagéré et / ou fait de façon maladroite.Script (j'ai nommé
fix-ruby-alternatives.sh
):la source
${RECMD}
et${CMD}
sans guillemets, au lieu d'utilisereval
. Sur une autre note: je vais emprunter "kludgingly". :)