
[Debian-Squeeze]
Es war überraschend schwierig, darauf eine Antwort zu finden.
Ich hatte Ruby v1.9.1 installiert (/usr/bin/ruby1.9.1), aber nachdem ich dann Rubygems installiert hatte, wurde auch Ruby1.8 installiert (/usr/bin/ruby1.8), und alle Befehle, die ich auf Gem ausführe (Gem Install ..., Rails ...), verwenden alle Ruby v1.8.
~/proj/rails/demo# bundle show sqlite3
/var/lib/gems/1.8/gems/sqlite3-1.3.4
Wie kann ich Rubygems und Rails dazu bringen, die von mir installierte Version 1.9.1 statt der Version 1.8 zu verwenden?
(Randbemerkung: Ich habe RVM mit „gem install rvm“ installiert, kann RVM danach aber nicht mehr ausführen. Was ist da los?)
Antwort1
Haben Sie /etc/alternatives aktualisiert? Auf der Ubuntu-Seite würden Sie „sudo update-alternatives“ ausführen und dem System mitteilen, worauf der Symlink für „/usr/bin/ruby“, „/usr/bin/gem“ usw. tatsächlich verweist. Ich bin nicht sicher, ob „update-alternatives“ in Debian enthalten ist, aber es sollte eine ähnliche Methode geben, um auf die gewünschte Version zu verweisen.
Hmm. Das ist zwar schon etwas älter, aber wahrscheinlich zutreffend:
http://kangaroobox.blogspot.com/2009/12/switching-ruby-platforms-on-debian.html
Antwort2
Unter Debian rubygems
ist das Paket nur ein Metapaket, das von abhängt rubygems1.8
, genauso wie ruby
nur von abhängt ruby1.8
. Wenn Sie also Rubygems für 1.9 möchten, müssen Sie installieren rubygems1.9
. Der gem
Befehl (wie alle anderen möglichen ausführbaren Dateien wie ruby
, irb
oder ri
) ist nur ein symbolischer Link, der auf die bevorzugte Version wie verweist gem1.8
. Sie können diese direkt verwenden oder verwenden, update-alternatives
um die bevorzugte Version festzulegen.
Bezüglich RVM gibt es zwar ein Gem, aber es enthält nur einige Helfer für RVM. RVM erfordert kein vorinstalliertes Ruby. Tatsächlich wird es oft als einzige Möglichkeit verwendet, Rubys auf Systemen zu installieren.
Um RVM tatsächlich zu installieren, führen Sie aus
bash < <(curl -s https://raw.github.com/wayneeseguin/rvm/master/binscripts/rvm-installer )
wie beschrieben aufRVM-Installationshandbuch. Weitere Informationen zu den verschiedenen Installationsvarianten finden Sie dort.
Antwort3
Sie müssen RVM (Ruby Version Manager) verwenden, mit dem Sie problemlos zwischen Ruby-Versionen wechseln können.
Um auf Ruby Version 1.9.1 umzusteigen, versuchen Sie
rvn use 1.9.1
Um diese Version als Standard festzulegen, verwenden Sie
rvn use 1.9.1 --default
Wenn Sie die Grundlagen von RVM erlernen möchten, folgen Sie bitte diesem Tutorial, in dem einige weitere Einzelheiten zur Verwendung von RVM erläutert werden.