Йосемити, рубиновые выпуски
Я получил новый Macbook Pro с Yosemite, на моем предыдущем компьютере были установлены Mavericks. Он сказал, что он восстановился от моей старой машины, но многие вещи пропали. Я не слишком много думал об этом, спеша, я просто начал вручную устанавливать все свои глобальные переменные (node, npm, mongodb, sass) вместе с другим программным обеспечением, которое мне не хватало.
Проблема, я не могу получить что-нибудь рубиновое, связанное с работой. Я получаю ту же ошибку для всех попыток установки gem.
/Library/Ruby/Site/2.0.0/rubygems/specification.rb:15:in `require': cannot load such file -- rubygems/util/stringio (LoadError)
from /Library/Ruby/Site/2.0.0/rubygems/specification.rb:15:in `<top (required)>'
from /Library/Ruby/Site/2.0.0/rubygems.rb:1204:in `require'
from /Library/Ruby/Site/2.0.0/rubygems.rb:1204:in `<module:Gem>'
from /Library/Ruby/Site/2.0.0/rubygems.rb:115:in `<top (required)>'
from <internal:gem_prelude>:1:in `require'
from <internal:gem_prelude>:1:in `<compiled>'
Имейте в виду, что я не трогал ruby, я даже не использую homebrew, так как он установлен вместе с ruby, при попытке получить ту же ошибку.
ruby -v дает мне это:
ruby 2.0.0p481 (2014-05-08 revision 45883) [universal.x86_64-darwin14]
echo $ PATH
/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Users/ryanore/npm-global:/data/db:/usr/local/bin/mongodb/bin
Есть хороший шанс, что мне нужно будет полностью переустановить Yosemite, но я не Ruby, поэтому я бы хотел, чтобы кто-то сказал мне, что это легко исправить.
Пожалуйста и спасибо.
3 ответа
Как ни странно, правильный ответ в итоге оказался тем, что @vgoff сказал в комментарии. Скажите парню, что он сделал это неправильно.
Я был в центре масштабного 4-месячного проекта и не мог стереть свою машину, пока она не закончилась. Я не мог решить проблему с rbenv или rvm, потому что это всегда приводило к одной и той же ошибке. Я даже не мог их установить.
Я ценю все ответы, но, в конце концов, этот крайний случай может быть решен только с помощью чистой установки.
В настоящее время вы используете OS X по умолчанию установку Ruby. Также кажется, что некоторые инсталляции с драгоценными камнями отсутствуют.
Я бы порекомендовал установить RVM и использовать Ruby Version Manager для установки предпочитаемой вами версии Ruby (я бы пошел с 2.2)*.
Это позволит вам как установить обновленную версию Ruby, так и сохранить инсталляцию Ruby операционной системы.
После установки чистой обновленной версии Ruby, просто выберите обновленную версию, используя rvm (rum use 2.2
) и установите все нужные вам драгоценные камни - вы можете запустить bundle install
из папки вашего приложения, если вы используете Bundler (который является менеджером драгоценных камней по умолчанию в Rail).
Нет необходимости переустанавливать всю систему для такого маленького вопроса, но иметь чистую обновленную установку Ruby всегда весело.
PS
Убедитесь, что вы установили XCode и инструменты командной строки, прежде чем устанавливать какие-либо гемы, которые нужно скомпилировать. Для установки ruby, вероятно, также потребуется XCode.
* Обязательно следуйте инструкциям RVM и выбирайте только что установленную версию Ruby, прежде чем устанавливать какие-либо гемы. Возможно, вы захотите сделать недавно установленную версию Ruby версией по умолчанию для вашего пользователя: rvm use 2.2 --default
Установите Xcode и инструменты командной строки. Установите инструменты командной строки, запустив в терминале
xcode-select --install
Что касается Ruby Version Manager, я предпочитаю rbenv. Вы столкнетесь со слишком многими проблемами, используя системный рубин.
Установите RBENV:
Клонировать репо:
git clone https://github.com/sstephenson/rbenv.git ~/.rbenv
Добавьте Rbenv к вашей переменной $PATH - Run in Terminal:
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bash_profile
Добавьте rbenv init в вашу оболочку - Запустите в терминале:
echo 'eval "$(rbenv init -)"' >> ~/.bash_profile
Перезапустите свой терминал для изменений
Вы должны быть в состоянии запустить:
type rbenv
Который должен вывести: "rbenv - это функция"
Теперь установите Ruby-build как плагин
Клонировать репо:
git clone https://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build
Есть также некоторые рекомендуемые библиотеки, которые вы должны установить, чтобы избежать проблем с зависимостями - при условии, что вы используете homebrew:
brew install openssl libyaml libffi
Теперь для установки Ruby:
Перечислить доступные версии
rbenv install -l
Чтобы установить версию
rbenv install 2.2.0
Чтобы установить его глобально, выполните:
rbenv global 2.2.0
Доступно больше команд, но они должны помочь вам начать.