запуск модуля pod дает мне «плохой интерпретатор: нет такого файла или каталога»


203

Недавно попытался сделать, pod setupи я получаю это:

-bash: /usr/local/bin/pod: /usr/local/opt/ruby/bin/ruby: bad interpreter: No such file or directory

Я следовал руководству Рэя Вендерлиха по установке Cocoapods, и я получил эту проблему, поэтому я понятия не имею, что происходит.


Неправильная установка Ruby?
— SwiftArchitect

Какая у вас система? [Дарвин (Mac OS X)?] Как вы установили Ruby? [заваривать? порты? из источника?] Как вы управляете версиями Ruby? [РВМ? rbenv?] Каким руководством Рэя Вендерлиха вы следовали? [есть несколько]
— MWP

Ошибка в основном говорит вам, что переводчик, которого вы пытаетесь использовать, отсутствует. Посмотрите на / usr / local / bin / pod, первую строку (начинающуюся с #!), И вы увидите там интерпретатор ruby. Есть ли что-нибудь в / usr / local / opt / ruby? Вы используете rbenv, rvm?
— Мирча

Ответы:


463

Я столкнулся с этой проблемой при обновлении до Mac OS High Sierra.

Это было мое исправление:

sudo gem install cocoapods

Я нашел этот ответ в списке проблем CocoaPods на Github .


5
Этот исправил это для меня.
— Андрей

28
не забудьте sudo:sudo gem install cocoapods
— blackhawk4152

2
У меня была та же проблема, я делал brew updateи brew upgradeустановил последние кокаподы для меня и сделал
— свое дело

10
Это помогает и с Каталиной.
— Посен

16
Это исправило это для меня на macOS Catalina. Спасибо :)
— Benr783

92

Это случилось, когда я перешел на Каталину. Я решил это, запустив:

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

10
Это было решением для меня после перехода на Каталину.
— Джо

Возможно, вам придется установить отдельный пакет для среды разработки ruby, например, ruby-dev или ruby-devel.
— Чандни

Наряду с этим у меня также была проблема с openssl, которую я должен был сначала исправить -brew uninstall openssl & brew install openssl
— Jacksonkr

71

После обновления до High Sierra я получил ту же ошибку, просто переустановил cocoapods

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

Работал хорошо, приятно!
— Джон Сардинья

Это необходимо для Высокой Сьерры. Спасибо.
— Gunjot Singh

11
Для тех, кто обновился до Каталины, это тоже нужно.
— 1993 год,

50

Та же проблема, с которой я столкнулся, когда я обновил нашу систему с Sierraдо Mojave.Также работает для Каталины

Работали следующие шаги:

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

Я получил помощь по следующей ссылке .


4
Получение той же проблемы после обновления до Каталины. Это помогает! Используйте Sudoперед, чтобы получить разрешение на запись fwiw.
— Ин Чен

4
Я оказался здесь после установки Catalina. Это хорошо работает.
— Hoon

2
работал для меня после обновления 10,14 Мохаве до 10,15 Каталина
— Fato

15

я исправил это, запустив brew install ruby


Мне пришлось переустановить rew uninstall cocoapods rew install cocoapodsпосле того, как я установил ruby, чтобы ошибка исчезла.
— Гюнтер Цохбауэр


6

Пока я пытаюсь установить снова, я получил еще одну ошибку, говоря, что

ОШИБКА: при выполнении gem ... (Gem :: FilePermissionError) У вас нет разрешения на запись в каталог /Library/Ruby/Gems/2.3.0.

Тогда я сделал это и работал нормально.

sudo gem uninstall cocoapods

sudo gem install cocoapods

Скорее всего, вам не нужно было удалять. Эта ошибка просто говорит о том, что у вас нет необходимых прав для выполнения того, что вы пытались сделать. Таким образом, добавление sudoбыло все, что вам нужно. См. Комментарий от [ stackoverflow.com/users/877341/blackhawk4152] выше
— PJayRushton

5

У меня сработало следующее:

Выберите Инструменты командной строки в XCode.

    XCode > Preferences > Locations > Command Line Tools > XCode 11.X.X

In terminal execute:

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

https://stackoverflow.com/a/60464653



4

После обновления с OS X Mojave до OS X Catalina я получил это сообщение при запуске pod initили pod --version: -bash: /Users/mangolassi/.gem/bin/pod: /System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/bin/ruby: bad interpreter: No such file or directory

Мне не нравится идея, sudo gem install cocoapodsпоэтому у меня есть папка .cocoapods в моем пользовательском каталоге, и я изменил свой .bash_profile, чтобы он указывал на нее. Ошибка, которую я получил, состояла в том, что версия 2.3 была жестко запрограммирована в этом файле: /Users/eric/.gem/bin/podи Каталина пришла с 2.6.

Возможно, что установка sudo перезапишет этот файл успешно, и, вероятно, удастся, но я хотел сохранить первоначальные настройки.

Я был в состоянии просто изменить первую строку shebang файла, /Users/eric/.gem/bin/podчтобы иметь путь с 2.6 вместо 2.3, и это сработало. Все изменения меняли «3» на «6» в моей погоне, поскольку версия все еще была «2».


Ницца! Только этот ответ работал для меня. Видимо после обновления до каталины рубин 2.3 был заменен на 2.6
— камен добрев


0

В моем случае ничего из вышеперечисленного не сработало. У меня был установлен ruby ​​2.3.0, и мне пришлось перейти на версию 2.0.0:

gem update --system 2.0.0


0

Для этого «одобренный rubyist» способ состоит в том, чтобы установить менеджер версий ruby ​​(rbenv) и через него установить cocoapods. sudoВозиться с и ваши рубины может привести к слезам.

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