Ruby - высокоуровневый, интерпретируемый язык программирования с открытым исходным кодом.
RVM - Ruby Version Manager. Инструмент командной строки для управления версиями
ruby и его окружениями (интерпретатор, наборы моделей и пр.).
На машине установлена
centos 7:
[root@centos7]# cat /etc/centos-release
CentOS Linux release 7.3.1611 (Core)
Установленная версия ruby:
[root@centos7 /]# ruby -v
ruby 2.0.0p648 (2015-12-16) [x86_64-linux]
Необходимо в дополнение к установленной версии, установить ruby 2.4, например для использования в отдельных проектах. Для решения данной задачи будет использоваться rvm, тем более что он может еще неоднократно пригодиться.
Устанавливаем группу пакетов
Development Tools:
[root@centos7 /]# yum group install 'Development Tools' --setopt=group_package_types=mandatory,default,optional
Посмотреть список групп пакетов можно так: yum grouplist а состав группы: yum groupinfo 'Development Tools'
Установка репозитария epel:
[root@centos7 /]# yum install epel-release
Импортируем GPG ключ:
[root@centos7 /]# curl -sSL https://rvm.io/mpapis.asc | gpg --import -
gpg: directory `/root/.gnupg' created
gpg: new configuration file `/root/.gnupg/gpg.conf' created
gpg: WARNING: options in `/root/.gnupg/gpg.conf' are not yet active during this run
gpg: keyring `/root/.gnupg/secring.gpg' created
gpg: keyring `/root/.gnupg/pubring.gpg' created
gpg: /root/.gnupg/trustdb.gpg: trustdb created
gpg: key D39DC0E3: public key "Michal Papis (RVM signing) " imported
gpg: Total number processed: 1
gpg: imported: 1 (RSA: 1)
gpg: no ultimately trusted keys found
Установка RVM:
[root@centos7 /]# curl -L get.rvm.io | bash -s stable
Активируем окружение rvm:
[root@centos7 /]# source /etc/profile.d/rvm.sh
[root@centos7 /]# rvm reload
RVM reloaded!
Устанавливаем зависимости, не вошедшие в установку:
[root@centos7 profile.d]# rvm requirements run
Checking requirements for centos.
Installing requirements for centos.
Installing required packages: libyaml-devel, readline-devel, openssl-devel, sqlite-devel.............
Requirements installation successful.
Теперь можно посмотреть какие версии ruby есть в нашем распоряжении для установки:
[root@centos7 ~]# rvm list known
# MRI Rubies
[ruby-]1.8.6[-p420]
[ruby-]1.8.7[-head] # security released on head
[ruby-]1.9.1[-p431]
[ruby-]1.9.2[-p330]
[ruby-]1.9.3[-p551]
[ruby-]2.0.0[-p648]
[ruby-]2.1[.10]
[ruby-]2.2[.6]
[ruby-]2.3[.3]
[ruby-]2.4[.0]
ruby-head
и далее еще целый список информации
....................
....................
Нас интересует версия 2.4, устанавливаем:
[root@centos7 ~]# rvm install 2.4
После завершения смотрим установленные версии ruby:
[root@centos7 ~]# rvm list
rvm rubies
=* ruby-2.0.0-p648 [ x86_64 ]
ruby-2.4.0 [ x86_64 ]
# => - current
# =* - current && default
# * - default
Версию 2.0.0 я ставил отдельно, что-бы было из чего выбирать.
Версия ruby по умолчанию:
[root@centos7 ~]# rvm use 2.0.0 --default
Using /usr/local/rvm/gems/ruby-2.0.0-p648
[root@centos7 ~]# ruby -v
ruby 2.0.0p648 (2015-12-16 revision 53162) [x86_64-linux]
[root@centos7 ~]# rvm use 2.4 --default
Using /usr/local/rvm/gems/ruby-2.4.0
[root@centos7 ~]# ruby -v
ruby 2.4.0p0 (2016-12-24 revision 57164) [x86_64-linux]
Если не указывать опцию
--default, выбранная версия будет использоваться только в текущем терминале.
Удачи.