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


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"

-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.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.