Jak odinstalować Ruby 1.8.7 i zainstalować Ruby 1.9.2?

20

Czy ktoś wie, jak poprawnie odinstalować Ruby 1.8.7 i zainstalować Ruby 1.9.2 na Ubuntu 11.10?

Dokładnie przeszukałem i żaden z samouczków, które znalazłem, nie zadziałał.

Spędziłem też bardzo dużo czasu, próbując zmusić RVM do pracy, a korzystanie z niego jest po prostu bolesne. Ponadto nie będę miał większego zastosowania w starszej wersji.

Zaktualizuj wyjścia:

which ruby:

/usr/local/bin/ruby

ls -l /usr/local/bin/ruby:

lrwxrwxrwx 1 root root 16 2011-10-17 21:20 /usr/local/bin/ruby -> /usr/bin/ruby1.8

ls -l /etc/alternatives/ruby:

lrwxrwxrwx 1 root root 18 2011-12-30 17:35 /etc/alternatives/ruby -> /usr/bin/ruby1.9.1

echo $PATH:

/usr/lib/lightdm/lightdm:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games

Nawiasem mówiąc, kiedy patrzę na klejnot --config, mówi mi, że jest tylko jeden klejnot /usr/bin/gem1.9.1

Dmat00
źródło

Odpowiedzi:

30

Czy jest problem z zainstalowaniem obu? A korzystając z wersji z repozytoriów? Zainstalowałbym Ruby 1.9.2 z:

sudo apt-get install ruby1.9.1-full

A następnie zaktualizuj system „alternatyw”, aby używał Ruby 1.9:

$ sudo update-alternatives --config ruby
There are 2 choices for the alternative ruby (providing /usr/bin/ruby).

  Selection    Path                Priority   Status
------------------------------------------------------------
* 0            /usr/bin/ruby1.8     50        auto mode
  1            /usr/bin/ruby1.8     50        manual mode
  2            /usr/bin/ruby1.9.1   10        manual mode

Press enter to keep the current choice[*], or type selection number: 2
update-alternatives: using /usr/bin/ruby1.9.1 to provide /usr/bin/ruby (ruby) in manual mode.
$ ruby --version
ruby 1.9.2p290 (2011-07-09 revision 32553) [x86_64-linux]

Będzie to również ustawić alternatyw erb, irb, rdoc, ri, testrbi na stronie man. Jednak musisz osobno zaktualizować polecenie gem:

$ sudo update-alternatives --config gem
There are 2 choices for the alternative gem (providing /usr/bin/gem).

  Selection    Path               Priority   Status
------------------------------------------------------------
* 0            /usr/bin/gem1.8     180       auto mode
  1            /usr/bin/gem1.8     180       manual mode
  2            /usr/bin/gem1.9.1   10        manual mode

Press enter to keep the current choice[*], or type selection number: 2
update-alternatives: using /usr/bin/gem1.9.1 to provide /usr/bin/gem (gem) in manual mode.

Wiem, że jest to myląco nazywane ruby1.9.1 zamiast 1.9.2, jakaś rzecz związana z pakowaniem w debian.

Hamish Downer
źródło
0

Jeśli naprawdę nie ma powodu, aby trzymać Ruby 1.8, łatwiej było go usunąć w następujący sposób:

sudo apt-get remove ruby1.8

sudo apt-get install ruby1.9.3
David Glance
źródło