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

RVM не переключает Rubies

Я запускаю Ruby 1.9.1p243 на CentOS, и я решил установить rvm для обработки обновления до 1.9.2 или понижения до 1.8.7 (в зависимости от того, что лучше работает для rails3).

Я выполнил следующие инструкции: http://rvm.beginrescueend.com/rvm/install/ и все правильно установлено. Я смог скомпилировать и установить Ruby 1.8.7, 1.9.1 и 1.9.2.

Однако, если я попытаюсь фактически переключиться на один из rvm установленных Rubies, с использованием rvm 1.8.7, например, ничего не работает. Моя система все еще использует Ruby, который я установил в /usr/local/bin/ruby.

Пример результата, который я получаю:

$ rvm use 1.8.7
$ ruby -v
ruby 1.9.1p243 (2009-07-16 revision 24175) [i686-linux]
$ which ruby
/usr/local/bin/ruby
$ rvm use 1.9.2
$ ruby -v
ruby 1.9.1p243 (2009-07-16 revision 24175) [i686-linux]
$ which ruby
/usr/local/bin/ruby

Я понятия не имею, почему это происходит, и я тоже не могу найти что-либо в Интернете по этому вопросу. Любая помощь будет оценена.

4b9b3361

Ответ 1

Обычно поддержка rvm проще всего с помощью IRC (#rvm on freenode) - в этом конкретном случае, что показывает "тип rvm | head -n1"? он должен показать, что "rvm - это функция". Если нет, это означает, что линия к источнику rvm не запускается правильно и, следовательно, переключение не работает. Обычно это означает, что у вас есть возврат в ~/.bashrc или вы пропустили добавление строки в исходный rvm.

Ответ 2

Натолкнулась на ту же проблему.

Вместо добавления следующего script в ~/.bash_profile добавьте его в ~/.bashrc:

[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm" # This loads RVM into a shell session.

И затем перезапустите терминал.

Ответ 3

Ваша установка является учетной записью пользователя root. Попробуйте это в оболочке  [[-s "/usr/local/rvm/scripts/rvm" ]] && & & &, "/USR/локальные/RVM/скрипты/РВМ"

перед работой переключателя rvm. Я добавляю эту строку в свой файл профиля, и теперь все в порядке.

Ответ 4

Может быть проблемой терминалов и вы должны попытаться закрыть окно терминала и открыть новый.:) Повторите попытку, изменилось ли оно...

Ответ 5

Я боролся с установкой по умолчанию rvm ruby ​​безрезультатно, пока я не пробовал это:

sudo bash -l -c 'rvm alias create default ruby-1.9.3-p392'

" sudo" предназначен для записи в /usr/local/rvm/config/alias (в моем примере он будет содержать "default = ruby-1.9.3-p392" )
" bash -l" - убедиться, что он запускает все скрипты (/etc/profile,/etc/ bash.bashrc и т.д.) оболочки входа