Подтвердить что ты не робот

Последний рубин Amazon Linux

Amazon Linux 2012.03 теперь поставляется с ruby ​​1.9.3

Чтобы установить его (согласно документам)

sudo yum install ruby19

Но ruby -v показывает 1.8.7. Как бы переключить его на 1.9.3 (если его уже там не было бы необходимости использовать RVM да?)

4b9b3361

Ответ 1

Ruby версия 1.9 должна быть доступна под именем ruby19 или ruby1.9. ruby - это просто символическая ссылка, которая указывает на версию рубина по умолчанию.

Ответ 2

Правильный способ сделать это на Amazon Linux:

sudo yum update (to get latest version of Amazon Linux (2013.09 at time of this answer)
yum install ruby19 
alternatives --set ruby /usr/bin/ruby1.9

Ответ 3

Дополняя @baboonWorksFine ответ, существует ряд команд 1.9, которые могут быть символически связаны как их некорректированные эквиваленты. Я сделал это:

sudo -s
for f in /usr/bin/*1.9
do
  ln -s $f ${f%1.9}
done

Таким образом, вы не случайно пропускаете команды, которые нуждаются в псевдониме.

Ответ 4

Если вы это сделаете:

ls -l /usr/bin/ruby*

вы, вероятно, увидите следующее:

lrwxrwxrwx 1 root root    7 Apr 26 18:27 /usr/bin/ruby -> ruby1.8
-rwxr-xr-x 1 root root 3720 Mar 29 08:29 /usr/bin/ruby1.8
-rwxr-xr-x 1 root root 3888 Mar 29 12:26 /usr/bin/ruby1.9

Это хорошо объясняется. Итак, что вы хотите сделать:

rm /usr/bin/ruby && ln -s /usr/bin/ruby1.9 /usr/bin/ruby

Ответ 5

Вот одно простое решение и очиститель.

alternatives --config ruby

Это будет список всех версий Ruby, которые вы установили через yum. Все, что вам нужно сделать, это выбрать номер, указанный там, и нажать Enter.

Ответ 6

Я использовал @Ian Dickinson ответ, но добавил "f" к параметрам ln, чтобы заставить его перезаписать существующую ссылку. Таким образом, код:

sudo -s
for f in /usr/bin/*1.9
do
  ln -fs $f ${f%1.9}
done