Невозможно установить какао-стручки после удаления, приводит к ошибке

120

Я удалил какао-стручки, потому что он утверждал, что он установлен, но все время повторял, что командный модуль не был найден впоследствии. При попытке переустановить cocoapods ( sudo gem install cocoa pods -v) я получаю такую ​​ошибку:

ОШИБКА: при выполнении gem ... (Errno :: EPERM) Операция запрещена - / usr / bin / pod

Скриншот с ошибкой

Любые идеи?

Адриан Вакер
источник
Я использую учетную запись администратора, как мне исправить разрешения?
Адриан Вакер,
1
'pod' не существует в / usr / bin
Адриан Вакер,

Ответы:

424

Как было указано ниже Рамешем Рамчандараном , это более чистый способ сделать это, вместо того, чтобы обходить функции безопасности OS X.

sudo gem install -n /usr/local/bin cocoapods

Оригинальный ответ

Я предполагаю, что вы используете OS X 10.11.

Это происходит потому, что Apple включила rootless в новой установке.

Если вы наберете:

sudo nvram boot-args="rootless=0"; sudo reboot

в terminal.app, ваш компьютер перезагрузится, и он будет отключен.

Как только это будет сделано, введите:

sudo gem install cocoapods -V

-Vдля многословных и выложат любые ошибки , если они случаются.

Кайл Браунинг
источник
Спасибо! Комбинированная команда (в том числе sudo reboot) не удалась для меня и заморозила компьютер при нескольких разных попытках. При аппаратном сбросе настройки NVRAM не сохраняются. Мне пришлось запустить первую команду до точки с запятой, а затем перезапустить из меню Apple. Затем можно было установить коконады. Спасибо!!!
BJ Miller
Какая спаситель! Спасибо!
Крис
1
в El Capitan GM первая установка (sudo gem install cocoapods -V) не сработала, а вот вторая!
Дэн Болье
в чем обратная сторона отключения rootless?
ppaulojr
Обратной стороной является безопасность
Кайл Браунинг
162

Поскольку rootless не влияет на / usr / local / bin, успешно выполняется следующее:

sudo gem install -n /usr/local/bin cocoapods

Есть предостережения?

Раджеш Рамачандран
источник
Это гораздо лучшее решение, чем мое.
Кайл Браунинг
сколько времени потребуется для установки. требуется больше времени.
Джавид
4

Использование home-brew или пользовательского $ GEM_HOME может помочь решить проблему. Я выполнил чистую установку Ruby с помощью brew : brew install ruby теперь, gemпохоже, все происходит относительно моего /usr/local/bin*, что именно то, что мне нужно.

Нарисовался
источник
0

Я рекомендую установить все ваши драгоценные камни в свою .gemпапку в вашей домашней папке, чтобы избежать использованияsudo менеджера версий ruby, как предлагают другие люди.

Все, что вам нужно сделать, это обновить ваш .bash_profile, добавив эти 2 строки. (Не забудьте перезагрузить терминал после применения этих изменений)

export GEM_HOME=~/.gem
export PATH="$GEM_HOME/bin:$PATH"
PatrickDotStar
источник
-1

После обновления с Yosemite до El Capitan (10.11.4) я продолжал получать следующее сообщение об ошибке при попытке `` переустановить '' Cocoapods (после опробования практически всех решений в разных потоках Stackoverflow и самой странице проблем Cocoapods для та же проблема)

"Could not find a valid gem 'cocoapods' (>= 0) in any repository"

Однако выйти из терминала, перезапустить систему, создать новый проект Xcode с нуля, а затем, когда я это сделал 'pod install', он сработал.

Примечание: я пытался использовать cocoapods Alamofire и SwiftyJson.

Naishta
источник