TLDR: Как заставить приложение rails использовать правильный интерпретатор ruby?
Здравствуйте,
Что-то скрыло части моей установки Ruby 1.9.2p290 (некоторые классы просто пропали однажды), поэтому я удалил его и попытался переустановить среду.
Я работаю на Snow Leopard.
Ruby 1.9.2 был установлен из исходного кода.(Я попытался установить через MacPorts, и это не получится).Я не увлекаюсь RVM, так как использую bundler, и мне кажется, что я вспоминаю некоторые проблемы с взаимодействием bundler и RVM, хотя из того, что я могу сказать, RVM работает.
После переустановки нескольких драгоценных камней я заметил, что они были размещеныв папке gem для Ruby 1.8.«Это странно», - подумал я.
Запуская приложение rails, я замечаю много странных исключений в отношении синтаксиса.После печати RUBY_VERSION на стандартный вывод, я заметил, что приложение Rails работает 1.8.7.
which ruby
показывает только один интерпретатор ruby:
$ which ruby
/usr/bin/ruby
$ /usr/bin/ruby -v
ruby 1.9.2p290 (2011-07-09 revision 32553) [x86_64-darwin10.8.0]
Если я открою Activity Monitor,Процесс ruby из приложения Rails находится на /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby
, который, я считаю, является интерпретатором ruby, с которым поставляется OSX.
Я не нашел никакой информации о полной очистке Ruby от OSX.Я хотел бы сделать это, а затем просто установить ruby из исходного кода.
Кажется, есть две проблемы:
- В Rails работает интерпретатор ruby, который я понятия не имею, как он вызывается, когда мне нужно запустить интерпретатор 1.9.2, установленный из источника
- , гемы устанавливаются в папку 1.8, я подозреваю, потому что гем считает, что он работает под 1.8
Как сделатьЯ это исправлю?
Спасибо,
Том