Comment définir par défaut ruby ​​2.1.2?

12

J'ai rubis 1.9.3 et 2.1.2. Lorsque j'ouvre le terminal par défaut, il utilise ruby ​​1.9.3 mais je veux utiliser ruby ​​2.1.2.

Comment puis-je définir ruby ​​2.1.2 comme valeur par défaut?

Rasool
la source

Réponses:

6

Vous devez installer RVM pour gérer vos versions Ruby. Pour installer RVM,

sudo apt-get install zlib1g-dev build-essential libssl-dev libreadline-dev libyaml-dev libsqlite3-dev sqlite3 libxml2 libxml2-dev libxslt-dev gawk libgdbm-dev libncurses5-dev automake libtool bison libffi-dev nodejs
\curl -sSL https://get.rvm.io | bash -s stable

Si cela se casse pour une raison quelconque, suivez les instructions ici: /programming//a/9056395/2376036

Ensuite, pour faire le 2.1.2 par défaut

rvm --default use 2.1.2
Termhn
la source
Salut, Merci beaucoup pour votre aimable aide, Oui, j'ai suivi vos instructions mais dans le terminal lors de l'installation de rvm, il est dit "package rvm cassé, veuillez vérifier stackoverflow.com/a/9056395/497756 " alors j'ai suivi le chemin et l'obtenir au succès, merci pour votre aide
Rasool
Heureux d'avoir pu aider, veuillez marquer ma réponse comme acceptée afin que les gens à l'avenir puissent savoir ce qui a fonctionné pour vous. J'ajouterai le contexte supplémentaire de votre commentaire dans ma réponse.
Termhn
19

/usr/bin/rubyest généralement un lien vers /etc/alternatives/ruby, qui à son tour est lié à l'exécutable de la version ruby ​​par défaut (par exemple /usr/bin/ruby1.9). Vous pouvez modifier la version par défaut configurée avec:

sudo update-alternatives --config ruby

Si la version souhaitée ne s'est pas configurée comme alternative pour ruby(par exemple si elle n'est pas configurée par le gestionnaire de paquets), vous pouvez le faire vous-même avec

sudo update-alternatives --install /usr/bin/ruby ruby /path/to/ruby2.1 <PRIORITY>

<PRIORITY>est un entier positif. Ensuite, vous pouvez effectuer la première étape.

Pour plus de détails, consultez le manuel deupdate-alternatives(8) .

David Foerster
la source
5

Sur Ubuntu 14.04, vous pouvez installer le ruby2.0package. Actuellement, le package propose la version 2.0.0p384 (éventuellement le package peut proposer Ruby 2.1 ou une version plus récente). Voici le moyen simple d'installer des binaires ruby:

sudo apt install ruby2.0

Ensuite, vous aurez des binaires ruby2.0et gem2.0. Pour remplacer Ruby 1.9 par défaut par 2.0, vous pouvez procéder comme suit ( REMARQUE: vous pouvez casser des applications qui nécessitent strictement Ruby <= 1,9).

sudo update-alternatives --set /usr/bin/ruby ruby /usr/bin/ruby2.0 10
sudo update-alternatives --set /usr/bin/gem gem /usr/bin/gem2.0 10

D'autres possibilités utilisent un gestionnaire de version ruby ​​comme rbenv ou RVM . Le premier est plus compliqué à configurer, mais moins hacky que RVM. Les deux permettent d'installer presque toutes les versions de Ruby que vous souhaitez utiliser.

Tombart
la source
1
Êtes-vous sûr que le commutateur d'installation est correct. stackoverflow.com/a/1892889/525174 la réponse m'a aidé, mais la seule différence est l'utilisation du commutateur --set.
Denis Besic
@Tombart il y a une erreur dans votre code.
horaceT
@horaceT Pourriez-vous être plus précis? Êtes-vous sûr que vous utilisez la même version d'Ubuntu?
Tombart
@Tombart J'ai copié et collé votre première ligne. Voici l'erreur: update-alternatives: error: alternative name (/usr/bin/ruby) must not contain '/' and spacesj'ai Ubuntu 14.04
horaceT
3

Si vous utilisez Ubuntu 14.04 (Trusty) ou une version plus récente, vous pouvez ajouter ce PPA:

sudo apt-get install software-properties-common
sudo apt-add-repository ppa:brightbox/ruby-ng
sudo apt-get update

Ensuite, vous pouvez installer le package de votre choix, par exemple

sudo apt-get install ruby2.2

Pour pouvoir créer des extensions natives, vous devrez également développer un package

sudo apt-get install ruby2.2-dev

Pour basculer facilement entre les versions Ruby installées, installez le commutateur Ruby:

sudo apt-get install ruby-switch

Commandes d'utilisation

ruby -v
ruby-switch --list

Exemple

sudo ruby-switch --set ruby2.1

De: https://www.brightbox.com/docs/ruby/ubuntu/

Gamaliel
la source