J'ai installé Ruby 1.9.3 avec homebrew
mais la valeur par défaut 1.8.7 est toujours utilisée. Comment puis-je changer pour utiliser 1.9.3 comme ruby par défaut?
But default 1.8.7 is still used. How can I switch osx to use 1.9.3 as default ruby?
Je vous suggère de regarder rvm . Vous pouvez ensuite le définir par défaut avec rvm use 1.9.3 --default
Mais si vous êtes satisfait de votre installation homebrew.
Ensuite, changez simplement la priorité des répertoires dans la variable PATH
Voici mes/etc/chemins
# homebrews should always take precedence
/usr/local/bin
# the default stack
/usr/bin
/bin
/usr/sbin
/sbin
Ceci est généralement important pour les homebrews, sinon la version système de git, Ruby, pg_admin, ... sera utilisée à la place de la version brassée.
si vous dites which -a Ruby
, vous verrez tous les rubis installés et la priorité dans la PATH
par exemple.
$ which -a Ruby
/Users/matthew/.rvm/rubies/Ruby-1.9.3-p0/bin/Ruby
/Users/matthew/.rvm/bin/Ruby
/usr/bin/Ruby
/etc/paths
Au lieu de cela, vous devez vérifier lequel de .profile
, .bashrc
ou .bash_login
est chargé dans votre shell et ajoutez simplement /usr/local/bin
à votre chemin.
Pour moi, je n'ai qu'un .profile
. Vous pouvez créer ce fichier si aucun de ces fichiers n'existe déjà dans votre répertoire de base.
# homebrews should always take precedence
export PATH=/usr/local/bin:$PATH
RÉPONSE COURTE:
après avoir installé Ruby via homebrew, procédez comme suit:
brew link --overwrite Ruby
et redémarrez ou rouvrez votre terminal
LONGUE RÉPONSE
J'ai donc fait une installation normale de Ruby en utilisant homebrew
brew install Ruby
cela a bien été installé MAIS il utilisait toujours le système par défaut Ruby . que j'ai vérifié en faisant:
which Ruby
#/usr/bin/Ruby
Donc, selon la suggestion de Matthew Rudy, j'ai vérifié l'ordre de mes chemins/etc /, et tout était bien.
Puis j'ai décidé de faire:
which -a Ruby
#/usr/bin/Ruby
#usr/local/bin/Ruby
donc rien n’a été cassé en tant que tel… ..a essayé de réinstaller Ruby à nouveau en utilisant la méthode homebrew, puis je l’ai trouvée.
Homebrew a mentionné:
Warning: Ruby-2.3.1 already installed, it's just not linked
donc dû faire:
brew link --overwrite Ruby
Si vous souhaitez utiliser homebrew pour installer la version 1.9.3, procédez comme suit:
$ brew update
$ brew install rbenv
$ brew install Ruby-build
Une fois que vous avez installé rbenv et Ruby-build, vous pouvez exécuter la commande suivante pour installer Ruby 1.9.3.
$ rbenv install 1.9.3-p125
Maintenant, si vous souhaitez utiliser 1.9.3 par défaut, vous pouvez exécuter la commande suivante:
$ rbenv global 1.9.3-p125
J'ai eu la même situation. J'ai installé Ruby avec Homebrew. which -a Ruby
m'a donné la sortie suivante:
#usr/local/bin/Ruby
#/usr/bin/Ruby
Ce qui signifie que la version nouvellement installée aurait dû être utilisée, mais Ruby --version
a quand même renvoyé l'ancienne version du système.
J'ai quitté le terminal (Cmd + Q), et après le redémarrage, Ruby --version
a renvoyé la version correcte. Assurez-vous donc de redémarrer le terminal après l’installation avant d’essayer d’autres corrections (potentiellement inutiles).
SHORT: Notez ce que vous voulez changer.
Si vous utilisez OS X et que vous essayez d’utiliser Ruby pour quelque chose comme Jekyll, n’utilisez pas d’homebrew, c’est ce que Apple utilise pour Ruby et il n’est peut-être pas bon de l’utiliser si Faire. Au lieu de cela, utilisez rbenv ou RVM.
MOINS COURT: J'essayais de passer de la version par défaut à une version mise à jour (à partir de la version 2.0) pour utiliser Jekyll car elle nécessitait Ruby version 2.2.5 et ultérieure. Je l'ai mis à jour et la version 2.5 était installée, mais quand j'ai coché "Ruby -v", c'était toujours 2.0. Une fois que j’ai enfin eu le temps de changer la version par défaut, je n’ai pas pu installer le paquet dont j’avais besoin parce que je n’avais pas l’autorisation d’écrire. Par exemple, si vous rencontrez quelque chose comme ça, alors vous avez probablement le même problème
$ gem install jekyll bundler
ERROR: While executing gem ... (Gem::FilePermissionError)
You don't have write permissions for the /Library/Ruby/Gems/2.0.0 directory.
Sous OSX, vous pouvez modifier le chemin en utilisant:
Sudo nano/etc/chemins
Et puis ajoutez un chemin ou changez l'ordre.