Comment créer Ruby 1.9 la version par défaut à utiliser au lieu du 1.8.x par défaut installé sur OS X? p>
Merci. P>
5 Réponses :
Je recommande d'installer l'outil RVM de http://rvm.beginrescueend.com/ (il a Instructions sur L'installation
Il vous permet d'avoir plusieurs versions de Ruby et de gemmes. Après avoir installé RVM, puis installez le Ruby 1.9 que vous souhaitez, à l'aide de: p> pour en faire l'une étant par défaut: p> Après cela, ce sera le rubis par défaut. P> p>
J'éviterais d'être trop spécifique en n'incluant pas le niveau de patch, c'est-à-dire: RVM --Default 1.9.1
RVM est idéal pour configurer plusieurs environnements avec différentes versions de rubis et de gemmes. P>
Si vous voulez cependant simplement avoir Ruby 1.9, vous pouvez simplement l'installer à l'aide de Macport. Il sera priorité sur celui déjà installé par défaut sur OS X. P>
sudo port selupdate
Port sudo installer ruby19
Port sudo Installez RB-RubyGems Code> Li>
ol>
Vous devriez alors avoir Ruby 1.9 installé et en avant sur le chemin. Faites un code> ruby -v pour vérifier. Utilisez des gemmes rubis pour installer tout autre composant rubis comme des rails. P>
Les ports sont installés dans le répertoire / opt / local / bin et MacPort met à jour la variable d'environnement de chemin afin que celles-ci soient ramassées avant les packages préinstallés / usr / bin. p>
Oui, c'est une bonne réponse aussi. Le seul commentaire que je ferais, c'est que avec RVM, vous pouvez obtenir différents jeux de gemmes. Différents gemmes sont nécessaires si vous essayez de faire les deux rails 2.x et Rails 3.0 Travail. De plus, j'ai eu des problèmes où une version de Ruby briserait certaines applications (en raison de bugs dans l'interpréteur de rubis).
Il y a un autre problème avec cette approche. Ruby1.9 (installé à l'aide de MacPorts) est appelé "Ruby1.9". Donc, si vous publiez "Ruby" dans le terminal, vous obtiendrez toujours Ruby 1.8.7 installé sur le système (car usr / local / bin est sur le chemin). Vous pouvez définir un lien symbolique sur Ruby1.9 en USR / local / bin.
Je dirais sauter le RVM.
Dans mon cas, Macports a préparé / opt / local / bin à mon chemin, mais installé Ruby 1.9 comme ruby1.9. (Laissant Ruby -> /usr/bin/ruby. )
p>by le moyen le plus simple de corriger: p> poof. Fait. P> Commandes exactes: P> nsmcs-macbook-pro:~ nsmc$ which ruby
/usr/bin/ruby
nsmcs-macbook-pro:~ nsmc$ echo $PATH
/opt/local/bin:/opt/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin
nsmcs-macbook-pro:~ nsmc$ which ruby1.9
/opt/local/bin/ruby1.9
nsmcs-macbook-pro:~ nsmc$ sudo su
Password:
sh-3.2# cd /opt/local/bin/
sh-3.2# ls -l ruby*
-rwxr-xr-x 2 root admin 9040 Feb 16 07:43 ruby1.9
sh-3.2# ln -s ruby1.9 ruby
sh-3.2# which ruby
/opt/local/bin/ruby
sh-3.2# ruby --version
ruby 1.9.2p136 (2010-12-25 revision 30365) [x86_64-darwin10]
Je devais tirer le même truc de liaison symbolique avec MacPorts Gem 1.9 pour tromper le GEM à l'aide de la version non-cadre de Ruby.
Vous pouvez créer un alias plutôt qu'un symbole symbolique ... de cette façon, les deux versions sont laissées intactes. Ajoutez la ligne suivante à .profile dans le dossier à domicile de l'utilisateur (Créer si n'existe pas): puis source le fichier: p> espère que cela aide :) p> p>
à partir de v2.1.3, le "correct" Macports strong> mode de réglage Une version spécifique d'un package car la valeur par défaut consiste à utiliser la commande Il ne semble pas y avoir de documentation sur cette commande dans le guide MacPorts . Vous pouvez cependant exécuter SELECT CODE>, comme ceci: p>
sudo port Sélectionnez -Set Ruby Ruby19 Code> P>
Aide de port Sélectionnez CODE> pour obtenir une description très limitée. Cette fonctionnalité remplace le style
+ nosuffix code> "variante" de réglage de la version par défaut. P>