как указать rubygems использовать ruby ​​1.9.1?

как указать rubygems использовать ruby ​​1.9.1?

[Debian сжатие]

Найти ответ на этот вопрос оказалось на удивление сложно.

У меня был установлен ruby ​​v1.9.1 (/usr/bin/ruby1.9.1), но после того, как я установил rubygems, он также установил ruby1.8 (/usr/bin/ruby1.8), и все команды, которые я запускаю в gem (gem install ..., rails ...), используют ruby ​​v1.8.

~/proj/rails/demo# bundle show sqlite3
/var/lib/gems/1.8/gems/sqlite3-1.3.4

Как заставить rubygems и rails использовать установленную мной версию 1.9.1 вместо версии 1.8?

(примечание: я установил rvm с помощью «gem install rvm», но после этого я не могу запустить rvm, в чем дело?)

решение1

Вы обновили /etc/alternatives? В Ubuntu вы бы запустили "sudo update-alternatives" и сообщили системе, на что на самом деле указывает символическая ссылка для "/usr/bin/ruby", "/usr/bin/gem" и т. д. Я не уверен, есть ли "update-alternatives" в Debian, но должен быть похожий метод указания на нужную вам версию.

Хм. Это немного устарело, но, вероятно, применимо:

http://kangaroobox.blogspot.com/2009/12/переключение-ruby-платформ-на-debian.html

решение2

В Debian rubygemsпакет — это просто метапакет, который зависит от rubygems1.8, точно так же rubyзависит только от ruby1.8. Таким образом, если вам нужен rubygems для 1.9, вам нужно установить rubygems1.9. gemКоманда (как и все другие потенциальные исполняемые файлы, такие как ruby, irbили ri) — это просто символическая ссылка, указывающая на предпочтительную версию, например gem1.8. Вы можете использовать их напрямую или использовать update-alternativesдля установки предпочитаемой версии.

Что касается RVM, то, действительно, есть gem, но он содержит только несколько помощников для RVM. RVM не требует предустановленного ruby. Фактически, часто он используется как единственный способ установки ruby ​​в системах.

Для фактической установки RVM запустите:

bash < <(curl -s https://raw.github.com/wayneeseguin/rvm/master/binscripts/rvm-installer )

как описано наРуководство по установке RVM. Пожалуйста, обратитесь к нему для получения дополнительной информации о различных вариантах установки.

решение3

Вам необходимо использовать RVM (Ruby Version Manager), который может легко переключать версии Ruby.

Чтобы перейти на версию Ruby 1.9.1, попробуйте

rvn use 1.9.1

чтобы сделать эту версию версией по умолчанию, используйте

rvn use 1.9.1 --default

Если вам необходимо изучить основы rvm, пожалуйста, следуйте этому руководству, в котором подробно объясняется, как использовать RVM.

http://beginrescueend.com/rvm/basics/

Связанный контент