1

Недавно я использовал Homebrew для установки Ruby 1.9.2 на OSX. Бинарный файл для новой версии находится в /usr /local /bin.

Когда я набираю "ruby" (или "irb") в терминале, я хочу, чтобы исполнялись двоичные файлы, соответствующие 1.9.2. На данный момент я делаю это с грязными псевдонимами в моем ~/.bash_profile:

alias 'ruby'=/usr/local/bin/ruby
alias 'gem'=/usr/local/bin/gem
alias 'irb'=/usr/local/bin/irb

Есть ли лучший, более "правильный" способ сделать это? Я слышал, как люди упоминают, что мне может понадобиться исправить мой путь?

Кроме того, хотя псевдоним работает для 'ruby' и 'gem', он не работает для двоичного файла irb - когда я набираю 'irb', он все равно загружает версию интерактивного ruby, которая не может обрабатывать синтаксис, специфичный для Рубин 1.9.

1 ответ1

2

Исправить свой путь

Избавьтесь от этих псевдонимов. Удалите их из bash_profile . Прежде всего, проверьте свой путь.

echo $PATH

Здесь /usr/local/bin должен иметь приоритет над /usr/bin . Если это не так, значит что-то не так. Попробуйте добавить следующее при добавлении этой строки в ~/.bash_profile:

export PATH=/usr/local/bin:$PATH

Сохраните его, откройте новую оболочку и запустите

which -a ruby

Теперь вы должны увидеть, что используется /usr/local/bin/ruby , тогда как /usr/bin/ruby занимает второе место (это по умолчанию ruby 1.8.7 в OS X).


Альтернатива: установить RVM

Для лучшей работы с Ruby я бы порекомендовал полностью удалить установку Ruby для Homebrew и установить RVM, менеджер версий Ruby. Зачем? Потому что это позволяет вам переключаться между вашими локально установленными Ruby и Gems.

Установите git поверх Homebrew, если вы этого еще не сделали. Затем:

bash < <(curl -s https://rvm.beginrescueend.com/install/rvm)

После установки добавьте RVM в ваш ~/bash_profile , введя в терминал следующее:

echo '[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm" # Load RVM function' >> ~/.bash_profile

Наконец, откройте новое окно терминала и проверьте, работает ли RVM:

type rvm | head -1

Это должно вывести «rvm - это функция». Затем вы можете приступить к установке Rubies:

rvm install 1.9.2

Примечание: для любого другого типа инструкции, следующей в командной строке

rvm notes

Это даст вам подробные заметки о том, что и как.

Когда это будет сделано, вы можете установить его по умолчанию:

rvm --default use 1.9.2

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .