macOS High Sierra에서 작동하지 않는 CocoaPod


163

macOS로 업그레이드 한 후 High Sierra CocoaPods가 작동하지 않습니다. CocoaPods에서 멀어지고 싶지만 안타깝게도 지금은 범위 내에 있지 않습니다. 오류 메시지는 다음과 같습니다.

zsh: /Users/****/.gems/bin/pod: bad interpreter: /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin: no such file or directory

오류가 Ruby에서 업그레이드 되었기 때문에 발생하지만 쉽게 해결할 수있는 방법은 무엇입니까? CocoaPods에서 새로운 루비 버전을 사용하려고하면 다른 오류가 발생합니다.

편집 : 지금은 내가 설치 Ruby 2.0rvm install 2.0.0rvm use 2.0.0다음 다시 설치 CocoaPods sudo gem install cocoapods. 지금 일하는 것 같습니다.


명령 행 도구를 업데이트 했습니까?
matt

@matt 네, sudo xcode-select -s /Applications/Xcode-beta.app그리고 sudo xcode-select --install거기에서 GUI를 따랐습니다.
Maciej Swic

나는 여기에있는 것들을 생각하고 있었다 : developer.apple.com/download/more 나는 종종 외부 도구가 설치 될 때까지 작동하지 않는다는 것을 안다.
matt

답변:


417

https://github.com/CocoaPods/CocoaPods/issues/6778 에 따르면 CocoaPods를 다시 설치하면이 문제가 해결됩니다.

sudo gem install cocoapods

2
나를 위해 일한, 허용 된 솔루션으로 표시되어야 함
Swalkner

17
간단한 "Brecoate Cocoapod 재설치"가 작동했습니다 (정확한 명령을 실행하므로). 지적 해 주셔서 감사합니다.
Markus

이것이 작동하지만 업데이트 된 Ruby 버전을 찾을 수 없으므로 CocoaPods 문제 여야합니다. 아마도 다시 설치하면 설치를 다시 확인하여 "수정"합니다.
한스 코첼

gem install cocoapods-nil을 문자열로 암시 적으로 변환하지 않지만 "cocoapod를 다시 설치"하면 작업이 수행됩니다. 감사 @Markus
krishnan

gem install -n / usr / local / bin cocoapods가 도움이됩니다
Anupam Gupta

112

macOS High Sierra로 업그레이드 한 후 다음 명령으로 수정하십시오.

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

완료되면 아래 명령을 작성하십시오.

pod install

이 솔루션은 나를 위해 일했습니다 ... !!!


1
첫 번째 명령을 실행할 때 "오류 : gem을 실행하는 중 ... (Errno :: EPERM) @ rb_sysopen-/System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/bin/gem"작업이 허용되지 않습니다 " 그러나 두 번째를 실행하면 여전히 "포드 설치"가 작동합니다. 감사.
브라이스 Sandlund

"경고"에도 불구하고 어쨌든 나는 여기에 감사를 표할 것이다. 이것이 나를 위해 일한 유일한 것입니다. cocoapod를 재설치하는 것 (몇 번)은이 두 단계를 모두 수행 할 때까지 아무런 차이가 없었습니다. 감사합니다!
huygir

다음 명령을 통해 루비 업데이트를 실행해야했습니다.sudo gem update -n /usr/local/bin --system
Paul Popiel

나를 위해 일했습니다 (cocoapods 1.5.3).
atereshkov

27

CocoaPods를 설치하는 동안이 오류가 발생했습니다

ERROR:  While executing gem ... (Gem::FilePermissionError)
You don't have write permissions for the /usr/bin directory.

그리고 나는이 진술을 사용했습니다. 효과가 있었다!

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

1
이것은 나를 위해 작동하는 것처럼 보이는 유일한 솔루션입니다. 감사합니다
Dan Beaulieu


9

이것은 내 문제를 해결했다.

$ brew install ruby
$ gem install -n /usr/local/bin cocoapods

이 기술에 새로운 사람들이 이해하는 변화를 가지고 당신의 대답 :-) 다시 사용할 수 있도록 게시 된 코드가 수행하는 작업에 대한 간단한 설명 부탁드립니다
마티유 VIALES

1
cocoapods를 처음 접하는 사람들은 다른 사람들처럼 읽는 법을 알아야합니다.
thibaut noah

@MathieuVIALES에서 "brew install ruby"는 이미 Homebrew packager ( brew.sh ) 가 있다고 가정합니다 . 그런 다음 해당 명령을 설치합니다 (또는 Homebrew 자체를 설치하려면 실제로 루비가 필요하기 때문에 기술적으로 루비가 다시 설치됩니다). 다음 줄 "gem install -n / usr / local / bin cocoapods"는 CocoaPod 프로그램을 다시 설치합니다 (자세한 내용은 cocoapods.org ).
Eddie Eddie Eddie

8

아래 명령을 실행하십시오.

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

6

그래서 High Sierra로 업데이트 한 후에도이 문제가 발생했으며 루비 프레임 워크가 액세스하는 파일 위치가 약간 변경된 것처럼 보입니다.

를 사용하여 해결할 수 있습니다.

sudo gem install cocoapods

안전한 측정을 위해 포드를 업데이트하십시오.

pod repo update 

그리고 마지막으로

pod install

포드 파일을 다시 작동 시키려면

희망이 있습니다. :)


5

사용해보십시오

sudo gem update --system

전에

sudo gem install cocoapods

이것은 나를 위해 일했다


5

이것은 나를 위해 작동합니다 :

brew link --overwrite cocoapods

5

Cocoapods 설치 과정 :

  1. sudo gem install cocoapods (문제가 발생하면 gemap 파일을 업데이트하십시오)

  2. sudo gem update --system

  3. sudo gem install cocoapods


4

나를 위해, 나는해야했다 :

gem uninstall cocoapods
which pod

여전히 경로에 표시되었으므로 삭제했습니다. 여전히 표시되지 않았는지 확인하십시오.

그때

gem install cocoapods

드디어 ! cocoapods를 설치하기 전에 이전 포드 실행 파일을 삭제하면 효과가있었습니다
Seb


3

또한 설치 후이 오류가 발생했습니다 High Sierra.

ERROR:  While executing gem ... (Gem::FilePermissionError)
You don't have write permissions for the /usr/bin directory.

Danh Huynh (위 참조)가 식별 한 다음 진술을 사용했으며 제대로 작동했습니다!

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

1
이것은 기존의 대답 의 반복 일 뿐입니 까?
Pang

이것은 나를 위해 그것을 고쳤다
MiMo

3

MacOS High Sierra는 기본적으로 루비 2.3을 사용합니다. 그것으로 업그레이드 한 후, 일부 오래된 루비 보석이 제대로 작동하지 않을 수 있습니다. 이 문제는 번들 명령을 실행할 때 발생합니다 (번들은 루비 젬입니다. 번들이라는 유틸리티가 있습니다).

따라서 명확히하기 위해 루비 2.0에 액세스하려고하는 오래된 루비 보석 (cocoapods, bundler 등)은 실패합니다.

해결책은 쓸 수있는 디렉토리에 오래된 보석을 다시 설치하는 것입니다.

코코아 포드의 경우

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

트릭을 할 것입니다.

before설치 가 마음에 들면 gem 시스템을 선택적으로 업그레이드 할 수 있습니다 :

sudo gem update --system

업그레이드가 실패했다는 메시지가 표시 될 수 있습니다. 그러나 실제로 입력하면 :

gem --version

업그레이드가 완료되었음을 알 수 있습니다.

번 들러 또는 다른 gem의 경우 동일한 작업을 수행하십시오.

sudo gem install gem-to-install(for example, bundler) -n /usr/local/bin

대한 -n옵션 . 놓치지 마세요. 원한다면 gem 문서를 확인할 수 있습니다.

따라서 해결책은 모두 reinstalling the old gem적절한 디렉토리입니다.


1

내가 똑같은 일을하는 동안 또 다른 오류가 발생했습니다.

오류 : gem을 실행하는 중 ... (Gem :: FilePermissionError) /Library/Ruby/Gems/2.3.0 디렉토리에 대한 쓰기 권한이 없습니다.

그런 다음이 작업을 잘 수행했습니다.

sudo gem uninstall cocoapods

sudo gem install cocoapods

1

같은 문제가 해결되었습니다.

  1. 루비 재설치

    brew install ruby

  2. 코코아 포드 재설치

    sudo gem install cocoapods


1

이것은 Mac OSX High Sierra로 업그레이드 할 때 일반적인 문제입니다.

수정은 단순히 Cocoapod를 다시 설치하는 것입니다.

sudo gem install cocoapods

1

터미널에서 이것을 실행하면 나를 위해 일했습니다.

sudo gem install cocoapods

0

터미널에서 아래 명령을 사용한 후 프로젝트에 코코아 포드를 설치할 수 있습니다.

sudo gem install cocoapods --source http://rubygems.org

0

나는이 문제에 직면했지만 다양한 재설치 / 업데이트와 같이 덜 극적인 방식으로 수정했습니다. 기존 (2.6.0) 루비 버전을 가리 키도록 PATH 환경 변수를 업데이트했습니다.


0

카탈리나로 업그레이드 한 후에도 같은 문제가 발생했습니다.

  1. 먼저 이러한 지침을 사용하여 brew와 ruby를 설치하여 ruby ​​설치를 업데이트했습니다. https://gorails.com/setup/osx/10.15-catalina (단, 레일이 아닌 루비 만)

  2. 그런 다음 위의 지침에 따라 cocoapod를 다시 설치했습니다.

    sudo gem 설치 cocoapods

그런 다음에도 여전히 위의 오류가 발생했습니다. 그런 다음 'zsh'를 입력하여 새 쉘을 생성하고 ~ / .zshrc 파일에서 구성 설정을 가져옵니다. 이 'pod update'명령이 다시 작동했습니다.


0

Sudo-less .zhs 친화적 솔루션

현대의 macOS sudo는 bash에서 zsh 로의 사용 및 이동을 권장하지 않으므로이 대답은 패션과 싸우지 않을 때 유용 할 수 있습니다.

  1. 명령에 .zshenv의해 존재 하는지 확인하십시오 touch ~/.zshenv. 다음 라인을 추가하여 RubyGems 환경을 구성하십시오.

    export GEM_HOME=$HOME/.gem
    export PATH=$GEM_HOME/bin:$PATH

    터미널을 다시 시작하는 것을 잊지 마십시오.

  2. 를 실행하십시오 gem install cocoapods.

0
If cannot install new version cocoapods, example below:
1. Please remove Command line tools
sudo rm -rf /Library/Developer/CommandLineTools
2. Install new Command line tools version
sudo xcode-select --install
3. after installing run below command
open /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.