Відмова від відповідальності: @theTinMan та інші розробники Ruby часто зазначають, що вони не використовуються sudo
при встановленні дорогоцінних каменів, і вказують на такі речі, як RVM . Це абсолютно вірно, коли ви робите розробки Ruby. Ідіть і використовуйте це.
Тим НЕ менше, багато хто з нас просто хочуть деякі двійковий файл , який трапляється бути розподілені як дорогоцінний камінь (наприклад fakes3
, cocoapods
, xcpretty
...). Я точно не хочу заважати керувати окремим рубіном. Ось ваші швидші варіанти:
Варіант 1: продовжуйте використовувати судо
Використання sudo
, ймовірно, добре, якщо ви хочете, щоб ці інструменти були встановлені в усьому світі.
Проблема полягає в тому, що ці двійкові файли встановлюються в /usr/bin
, що є поза межами з часу El Capitan. Однак ви можете встановити їх /usr/local/bin
замість цього. Ось де Homebrew встановлює свої речі, тому він, мабуть , вже існує.
sudo gem install fakes3 -n/usr/local/bin
Доступні дорогоцінні камені будуть встановлені у /usr/local/bin
кожен користувач у вашій системі, може використовувати їх, якщо він знаходиться у своїй PATH .
Варіант 2: Встановіть у домашній каталог (без судо)
Далі буде встановлено дорогоцінні камені ~/.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
якщо ви не зрозумієте, що змінюється, і чому ви хочете це зробити.