Я пытаюсь установить Rails 3 на совершенно новый MacBook Pro под управлением OS X 10.6.3, Ruby 1.8.7 и Rails 2.3.5, и мне интересно, не заморачивался ли я. Пока что я выполнил эти команды:
$ gem update --system
$ gem install arel tzinfo builder memcache-client rack rack-test rack-mount erubis mail text-format thor bundler i18n
$ gem install rails --pre
Однако когда я запускаю последнюю команду, я получаю такую ошибку:
ERROR: While executing gem ... (Gem::FilePermissionError)
You don't have write permissions into the /usr/bin directory.
Я думаю, он хочет, чтобы я запустил команду, sudo
чтобы она могла перезаписать /usr/bin/rails
. Но если я сделаю это, не буду ли я перезаписывать исполняемый файл Rails 2.3.5? Я не хочу этого делать. Вместо этого я хотел бы сохранить обе версии Rails. Как я могу это сделать?
sudo gem update --system -n /usr/local/bin
Ответы:
Я бы посоветовал использовать RVM, он позволяет вам иметь несколько версий Ruby / Rails, установленных с профилями гемов, и в основном хранить все ваши драгоценные камни друг от друга. Возможно, вы захотите ознакомиться с аналогичным постом Как я могу установить Ruby on Rails 3 на OSX
источник
используйте
-n
параметр для установки, как для коконоподов:источник
-n /usr/local/bin
на моем Mac. Я побежалwhich pod
определить его существующее местоположение, прежде чем использовать параметр -n, который действительно был / usr / local / binИспользование флага -n / usr / local / bin действительно работает, НО мне приходилось возвращаться на эту страницу каждый раз, когда я хотел снова обновить пакет. Итак, я придумал постоянное исправление для этого.
Для тех, кто заинтересован в том, чтобы исправить это навсегда :
Создайте файл ~ / .gemrc
Со следующим содержанием:
Теперь вы можете запускать свою команду в обычном режиме без флага -n.
Наслаждайтесь!
источник
vim .gemrc
как написать этот cmdУ меня это работает.
источник
cocoapods
нужную мне зависимостьТы можешь использовать
sudo gem install -n /usr/local/bin cocoapods
У меня это работает.
источник
Чтобы исправить вашу конкретную ошибку, вам нужно запустить эту команду как sudo, то есть:
источник
Эта ошибка поразила меня после правильной установки RVM. Решение: перезагрузите Терминал.
См. Руководство по установке RVM RailsCast .
источник
Для меня сработало что-то другое, что я нашел в этом ответе из аналогичного вопроса. Возможно, OP не поможет, но, возможно, у кого-то вроде меня была аналогичная проблема.
Вы действительно должны использовать rvm , но, поскольку никто не объяснил вам, как это сделать без rvm , вот и все:
источник
В macOS High Sierra это решило мою проблему:
источник