Ruby: гем установлен в неправильном каталоге - PullRequest
4 голосов
/ 01 марта 2011

Я довольно новичок в Linux (использую Ubuntu 10.10). У меня возникли проблемы при попытке установить Rails 3.0.5 в правильный каталог gem.

У меня есть корневая установка Ruby (1.8.7), которую я случайно установил (вероятно, вместе с ней была версия gem) и RVM, который я специально установил для управления версиями Ruby. Я могу использовать RVM по умолчанию для своей версии Ruby, без проблем.

Но когда я пытаюсь установить рельсы с помощью команды:

gem install rails

устанавливает рельсы в корневой каталог gems: /var/lib/gems/1.8/gems

но вместо этого я хочу установить рельсы в каталог RVM: /.rvm/rubies/ruby-1.9.2-p180/lib/ruby/gems/1.9.1/gems

Немного как, даже после выполнения sudo apt-get purge ruby rubygems. Плохая жемчужина все еще там. Я определяю это, выполняя whereis gem (правильная функция?). Который возвращает /usr/bin/gem1.8 /usr/bin/gem /usr/share/man/man1/gem.1.gz

Теперь, как мне избавиться от плохого камня и установить правильный камень в RVM?

Кстати, мой GEM_PATH - /home/me/.rvm/gems/ruby-1.9.2-p180@rails3:/home/me/.rvm/gems/ruby-1.9.2-p180@global:, что делает это более загадочным.

Любое предложение приветствуется,

Спасибо :)

Ответы [ 4 ]

3 голосов
/ 01 марта 2011

Есть пара вещей, которые могут ошибаться:

  1. Ваш интерпретатор по умолчанию не тот, о котором вы думаете:

Убедитесь, что вы запустили: rvm --default use 1.9.2

После этого запустите: ruby -v, чтобы убедиться, что у вас действительно есть правильный рубин в качестве рубина по умолчанию. Если вы это сделаете, то gem install rails должно работать нормально.

  1. Ваш интерпретатор ruby ​​установлен неправильно (или сам RVM установлен неправильно - маловероятно):

Возможно, ваш rvm установлен неправильно, хотя это маловероятно. Скорее всего, ваш интерпретатор ruby ​​не был установлен правильно. Я предлагаю удалить и затем переустановить, в то время как он устанавливает, внимательно следите за любыми ошибками / предупреждениями при компиляции, а затем устанавливайте интерпретатор, а затем гемы, которые RVM устанавливает по умолчанию (rake, rubygems). Вероятно, вы увидите ошибку на одном из этих шагов, что, вероятно, означает, что вам не хватает библиотеки, необходимой для правильной установки ruby ​​или гемов.

3 голосов
/ 01 марта 2011

если вы хотите установить рельсы в каталоге RVM, вам просто нужно запустить это:

rvm gem install rails

0 голосов
/ 03 сентября 2014

Если rvm --default use 1.9.2 выдает эту ошибку:

RVM is not a function, selecting rubies with 'rvm use ...' will not work.

Это означает, что вы не используете оболочку входа в систему или вам нужно сначала сделать /bin/bash --login. Нашел это решение в stackoverflow: установка rvm не работает: «RVM не является функцией»

0 голосов
/ 08 марта 2011

В итоге я удалил все, что связано с ruby ​​/ rvm / gems, и начал заново.Я использовал rvm (не sudo), чтобы установить все и убедиться, что все гемы ruby ​​попадают в каталог .rvm в моем каталоге пользователя.

...