Отказ от ответственности: @theTinMan и другие разработчики Ruby часто указывают, что их не следует использовать sudoпри установке гемов, и указывают на такие вещи, как RVM . Это абсолютно верно при разработке Ruby. Идите и используйте это.
Тем не менее, многие из нас просто хотят некоторые двоичный файл , который случается быть распределены как драгоценный камень (например fakes3, cocoapods, xcpretty...). Я определенно не хочу беспокоиться об управлении отдельным рубином. Вот ваши более быстрые варианты:
Вариант 1: продолжать использовать sudo
Использование sudo, вероятно, хорошо, если вы хотите, чтобы эти инструменты были установлены глобально.
Проблема в том, что эти двоичные файлы установлены /usr/bin, что запрещено со времен El Capitan. Тем не менее, вы можете установить их /usr/local/binвместо. Вот где Homebrew устанавливает свои вещи, так что, вероятно, уже существует.
sudo gem install fakes3 -n/usr/local/bin
Gems будут установлены, /usr/local/binи каждый пользователь в вашей системе сможет использовать их, если они находятся в своем PATH .
Вариант 2: установить в свой домашний каталог (без sudo)
Следующее установит гемы ~/.gemи поместит двоичные файлы ~/bin(которые вы должны затем добавить в свой PATH).
gem install fakes3 --user-install -n~/bin
Сделайте это по умолчанию
В любом случае, вы можете добавить эти параметры в свой, ~/.gemrcтак что вам не нужно их запоминать:
gem: -n/usr/local/bin
т.е. echo "gem: -n/usr/local/bin" >> ~/.gemrc
или
gem: --user-install -n~/bin
т.е. echo "gem: --user-install -n~/bin" >> ~/.gemrc
( Совет: вы также можете отказаться --no-documentот создания документации для разработчиков Ruby.)
sudoдля установки Ruby или изменения гемов. Вместо этого используйте rbenv или RVM для установки и управления Ruby. Прочитайте и следуйте инструкциям на соответствующих сайтах. И, в любом случае, после установки не используйте,sudoесли вы не понимаете, что меняется и почему вы хотите это сделать.