Cocoa Pods没有更新El Capitan上的吊舱

时间:2015-10-12 09:43:49

标签: ios cocoapods osx-elcapitan

我已升级到El Capitan,从那时起我无法更新我的播客。

$ pod update
-bash: pod: command not found

所以我试图重新安装CocoaPods并得到了这个:

$ sudo gem install cocoapods
ERROR:  While executing gem ... (Errno::EPERM)
    Operation not permitted - /usr/bin/xcodeproj

我是这台电脑的管理员。为什么会这样?

7 个答案:

答案 0 :(得分:201)

这是由El Capitan引入的新System integrity protection功能引起的。它甚至限制管理员写入/usr/bin

您最好的选择是在不需要sudo的情况下安装宝石。有一个很好的guide on how to do that

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

gem install cocoapods

答案 1 :(得分:8)

来自CocoaPods issues 3736

  1. 卸载所有cocopods实例(为了安全起见并保持清洁)请参阅fully uninstall Cocoapods

    sudo gem uninstall cocoapods
    

    甚至更好地完全卸载所有组件(并为每个组件选择所有版本)

    gem list --local | grep cocoapods | awk '{print $1}' | xargs sudo gem uninstall
    
  2. 重新安装

    sudo gem install -n /usr/local/bin cocoapods
    
  3. 更改访问权限

    sudo chmod +rx /usr/local/bin/
    

答案 2 :(得分:7)

这应该对你有用

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

Operation not permitted - /usr/bin/xcodeproj #3692

  

无论出于何种原因,只需升级系统,无根的东西似乎就不那么严格了。我可以在从10.10升级的机器上sudo gem install cocoapods - 但是,binstubs不再安装到/ usr / bin中:

$ sudo gem install cocoapods
[...]
1 gem installed
$ export PATH=$PATH:/Library/Ruby/bin
$ pod --version
0.37.2
  

我们从一些用户那里听说他们在进行系统范围的安装时会收到此错误:

     

ERROR: While executing gem ... (Errno::EPERM) Operation not permitted - /usr/bin/pod

     

我们不确定为什么gem在某些系统上表现不同,但这可以通过将-n /usr/local/bin传递给install命令来解决,以便在那里安装pod可执行文件。

答案 3 :(得分:4)

关于原始问题/问题:

$ sudo gem install cocoapods
ERROR:  While executing gem ... (Errno::EPERM)
    Operation not permitted

我发现我与几个 GEMS存在同样的问题,所以我将已识别的答案(Keith Smiley)推广到更新所有本地宝石......(在El Capitan上有无根力量) )

$ sudo gem install cocoapods -n /usr/local/bin/    # this command installs
$ sudo gem update -n /usr/local/bin/    # this command updates all local gems 

这很好用,会吐出所有更新和错误的详细日志。

我看到很多错误。他们都“无法转换”错误。解析许多文档会遇到“跳过”错误......就像这样:

$ unable to convert "\xCF" from ASCII-8BIT to UTF-8 for lib/jazzy... skipping

我相信这些跳过错误不是问题。

CocoaPods将在此过程中与所有其他本地GEMS一起更新,具体取决于您当地GEMS的当前状态。我相信这是处理无根问题的最佳方法(这是问题的原因)。

答案 4 :(得分:2)

安装Pod以进行自定义和标准安装的最佳选择 请参阅链接:https://github.com/CocoaPods/CocoaPods/issues/3692

enter image description here

答案 5 :(得分:0)

您是否再次安装Xcode Command Line工具?这解决了我的问题。您需要在Xcode首选项(位置)中选择命令行工具,然后再安装可可豆荚。

答案 6 :(得分:0)

对我而言,它适用于: sudo gem install -n / usr / local / bin cocoapods --pre