Как обновить Ruby до 1.9.x на Mac?

Я создал новую учетную запись пользователя на своем Mac, и я пытаюсь обновить текущую версию ruby ​​на нем (1.9.2) из ​​снежного барса по умолчанию 1.8.7. Может кто-нибудь указать мне учебник или объяснить лучший способ обновить Ruby на моем Mac с 1.8 до 1.9.2? Спасибо

9 ответов

Решение

Я сделаю сильное предложение для RVM.

Это отличный способ управлять множеством наборов Ruby и гемов, не сталкиваясь с системной версией.


Я добавлю, что сейчас (02.04.2013) я часто использую rbenv, потому что мои потребности просты. RVM великолепен, но у него есть много возможностей, которые мне никогда не нужны, поэтому он есть на некоторых машинах и rbenv на моем настольном компьютере и ноутбуке. Стоит проверить и то, и другое, и посмотреть, что лучше всего подходит для ваших нужд.

Как предполагает The Tin Man (см. Выше), RVM (Ruby Version Manager) - это стандарт для обновления установки Ruby в OSX: https://rvm.io/

Для начала откройте окно терминала и введите следующую команду:

\curl -L https://get.rvm.io | bash -s stable --ruby

(вам нужно будет доверить команде разработчиков RVM, что команда не является вредоносной - если вы такой параноидальный пингвин, как я, вы всегда можете прочитать исходный код: https://github.com/wayneeseguin/rvm). вам нужно перезапустить терминал, чтобы получить rvm Команда работает.

rvm list known

(показывает последние доступные версии Ruby)

rvm install ruby-2.3.1

Для конкретной версии, а затем

rvm use ruby-2.3.1

или если вы просто хотите последнюю (текущую) версию:

rvm install current && rvm use current

(устанавливает текущую стабильную версию - на момент написания ruby-2.3.1 - обновите эту вики, когда будут выпущены новые версии)

Примечание по компиляции Ruby: в моем случае мне также пришлось установить Homebrew http://mxcl.github.com/homebrew/ чтобы получить нужные мне драгоценные камни ( RSpec), что, в свою очередь, заставляет вас установить Xcode (если вы этого еще не сделали)) https://itunes.apple.com/us/app/xcode/id497799835 И / ИЛИ установите пакет GCC по адресу: https://github.com/kennethreitz/osx-gcc-installer чтобы избежать ошибок при запуске " make ".

Изменить: Начиная с Mavericks, вы можете установить только инструменты командной строки Xcode вместо всего пакета Xcode, который поставляется с gcc и множеством других вещей, которые могут вам понадобиться для сборки пакетов. Это можно установить, запустив xcode-select --install и следуя подсказкам на экране.

Примечание об ошибках: если при попытке выполнить эту команду появляется ошибка " RVM не является функцией ", посетите страницу: Как изменить версию Ruby с помощью RVM? для решения.

С заваркой это однострочник:

(при условии, что вы нажали homebrew/version, что можно сделать, запустив brew tap homebrew/versions)

brew install ruby193

Получилось из коробки для меня на OS X 10.8.4. Или, если вы хотите 2.0, вы просто brew install ruby

В более общем смысле, brew search ruby показывает различные доступные репо, и если вы хотите получить действительно конкретные, вы можете использовать brew versions ruby и проверить конкретную версию вместо.

Я знаю, что это старый пост, но я хочу добавить дополнительную информацию об этом. Во-первых, я думаю, что rvm отлично, НО это не обновляло ruby ​​из моей системы (MAC OS Yosemite).

Какие rvmделал: устанавливал в другое место и устанавливал там путь к моей переменной окружения... И мне было немного скучно, потому что у меня было два ruby ​​в моей системе.

Чтобы исправить это, я удалил rvm, затем использовал менеджер пакетов Homebrew, доступный здесь, и установил команду терминала ruby ​​throw, выполнив brew install ruby,

И тогда все работало отлично! Рубин из моей системы был обновлен! Надеюсь, это поможет следующим искателям приключений!

Я не согласен с жестяным человеком здесь. Я считаю rbenv предпочтительнее RVM. rbenv не сильно мешает вашей оболочке, как RVM, и позволяет вам добавлять отдельные установки Ruby в обычные папки, которые вы можете просмотреть напрямую. Это позволяет вам скомпилировать Ruby самостоятельно. Хорошая схема различий здесь: https://github.com/sstephenson/rbenv/wiki/Why-rbenv%3F

Инструкции по компиляции Ruby 1.9 для rbenv приведены здесь. Далее более подробная информация здесь. Я с легкостью пользовался этой техникой на Snow Leopard, Lion и Mountain Lion.

Эта команда на самом деле работает

\curl -L https://get.rvm.io | bash -s stable --ruby

Статья Дэна Бенджамина по Hivelogic Установка Ruby, RubyGems и Rails на Snow Leopard - это рекомендуемое место, хотя статья предназначена для версии 1.8, так что вот установка Ruby 1.9 для Snow Leopard. Остерегайтесь 64-битной штуки... либо перейдите на все 64-битные "толстые" (как, например, Apache на OS X, что может вызвать проблемы с 32-битными библиотеками), либо проверьте любые гемы, которые вам вероятны использовать, чтобы убедиться, что они в порядке для 64-разрядных.

Есть несколько других менеджеров версий, которые нужно рассмотреть, посмотрите несколько примеров, и один из них, которого там нет в списке, который я скоро опробую, это ch-ruby. Я пробовал rbenv, но у меня было слишком много проблем с ним. RVM - моя опора, хотя иногда она имеет странную проблему (отсюда мое желание попробовать ch-ruby, когда у меня будет шанс). Я бы не стал трогать систему Ruby, так как на это могут положиться другие вещи.

Я должен добавить, что я также несколько раз компилировал свой собственный Ruby, и использование статьи Hivelogic (как предположил Дэйв Эверитт) - хорошая идея, если вы выберете этот путь.

Как упоминалось ранее, версия пакета может быть слишком высокой для вашей версии рельсов.

Я столкнулся с той же проблемой, используя Rails 3.0.1, который требует Bundler v1.0.0 - v1.0.22

Проверьте версию вашего пакета, используя: gem list bundler

Если версия вашего комплекта не входит в соответствующий диапазон, я нашел, что это решение работает: rvm @global do gem uninstall bundler

Примечание: rvm требуется для этого решения... другой случай, почему вы должны использовать rvm в первую очередь.

Другие вопросы по тегам