Mac OS X 10.11下安装CocoaPods与“Errno::EPERM”错误的解决

前言

iOS开发中,少不了第三方类库的使用,诸如:AFNetworking、JSONKit、SDWebImage,这样就使我们管理、更新类库源码变得很头疼,将这些类库源码直接加入我们项目中发布出去,不仅配置环境麻烦(ARC或非ARC、依赖库配置等等)、版本更新也是一件非常头疼的事情。
这时候CocoaPods就出现了,CocoaPods是一个依赖关系管理工具,它可以帮助你解决上面所提到的问题,它不仅可以轻松完成下载、更新你项目中所用的第三方类库源码、还可以配置和维护所需要的环境。

CocoaPods的安装

CocoaPodss是用ruby语言写的,需要ruby环境支持,Mac OS系统默认都已经装有ruby,然后通过命令安装CocoaPodss即可,当然最好先更新下ruby,具体操作如下:

  1. 通过命令下载安装CocoaPodss需要联网从rubygems.org下载,由于我朝众所周知的网络原因,导致rubygems.org些经常不好使,幸运的是淘宝做了一个镜像,为了不出错,我们需要通过以下命令来修改下载源:
    gem sources --add https://ruby.taobao.org/ --remove https://rubygems.org/

  2. 升级ruby
    sudo gem update —system

  3. 按照网上的教程,来到这一步应该就是要执行“sudo gem install cocoapods”来下载cocoa pods了,但是将系统升级到了10.11后,会发现不好使,个人猜测是10.11修改了部分目录的权限,导致无法cocoapods下载的时候无法写入默认目录,具体提示为:ERROR: While executing gem ... (Errno::EPERM) Operation not permitted - /usr/bin/fuzzy_match
    在stackoverflow上搜索,顺利找到了解决方法,改掉将默认下载目录的环境变量,这里需要改两个值:GEM_PATHGEM_HOME,一个是让别人找到cocoapods,一个是它下载的路径,这里你可以理解为两个作用一样就好啦,具体操作如下:
    先新建一个存放cocoapods等其他gems的目录:
    mkdir -p $HOME/Software/ruby
    再通过以下命令更改两处环境变量
    export GEM_HOME=$HOME/Software/ruby
    export PATH=$PATH:$HOME/Software/ruby/bin
    需要注意的export命令只对当前终端窗口有用,关闭或者在其他窗口操作需要重新再敲一次,当然你也可以把上述命令放在 /etc/profile文件中,这样下次登录后会执行这里面的命令。

  4. 通过以上步骤,我们就可以下载cocoapods了,命令为:gem install cocoapods
    成功会有“gem installed”的提示,就大功告成啦~

你可能感兴趣的:(Mac OS X 10.11下安装CocoaPods与“Errno::EPERM”错误的解决)