美文网首页第三方iOS开发iOS Developer
CocoaPods安装以及常见错误总结

CocoaPods安装以及常见错误总结

作者: bd9eaddcbd27 | 来源:发表于2017-04-08 13:59 被阅读150次

    CocoaPods安装

    一、安装(或者更新)Gem (Gem是管理Ruby库和程序的标准包)

    1、更新gem ——  sudo gem udate --system || sudo gem install cocoapods --pre

    2、移除原来的org —— gem sources --remove https://rubygems.org/ (亚马逊的云服务在国内被禁用)

    3、增加新的org ——  gem sources -a https://ruby.taobao.org/ (如果淘宝源不能用了,可以用Ruby China 社区专注维护的这个源:https://gems.ruby-china.org/)

    4、查询gem是否安装完毕 —— gem sources -l

    gem -v   查询gem版本 

     sudo gem update --system     升级gem

    二、安装Pods

    OS X 10.11之前 —— sudo gem install CocoaPods

    OS X 10.11之后 —— sudo gem install -n /usr/local/bin cocoapods

    pod setup 设置pod仓库  (将Spec项目复制到当前用户的.cocoapods\master目录下,以后的查找、安装使用都是基于该本地目录的)

    pod --version 查询当前pod版本

    pod repo update  更新本地仓库,本地仓库完成后,即可搜索到指定的第三方库

    pod install  安装第三方库

    pod update  升级第三方库

    pod install --verbose --no-repo-update 安装第三方库不更新本地仓库

    pod update --verbose --no-repo-update  更新第三方库不更新本地仓库 

    pod repo list —— 结果为0 repos时说明安装不成功

    Setting up CocoaPods master repo 表示正在下载 输入"cd ~/.cocoapods/"命令行跳到cocoapods文件夹内,执行"du -sh *"查看正在下载的文件夹的大小

    三、卸载CocoaPods

    1、查找pod路径,打开终端执行which pod

    2、执行 sudo rm -rf 路径 移除RubyGems中的Cocoapods程序包(RubyGems(简称 gems)是一个用于对 Ruby组件进行打包的Ruby打包系统。 它提供一个分发Ruby程序和库的标准格式,还提供一个管理程序包安装的工具。查看gems中本地程序包)

    在终端输入 gem list 然后会打印gem下的所有包找到CocoaPods版本号

    3、移除程序包 执行命令 sudo gem uninstall cocoapods -v    v为版本号执行完命令后,最下面打印Successfully uninstalled cocoapods -版本号 已经成功卸载了!可以输入gem list再查看下

    注意:如果有错误,看看版本号是不是打错了,不该有空格地方有空格,或者打印下gem list看看是不是根本没找到对应的东西

    CocoaPods安装可能出现的问题以及解决办法:

    1、更新cocoapod的时候会出现Performing a deep fetch of the `master` specs repo to improve future performance

    解决办法:pod repo upadte --verboserm -rf ~/.cocoapods/repos/master  移除master库pod setup


    2、[!] /usr/bin/git clone https://github.com/CocoaPods/Specs.git masterCloning into 'master'...error: RPC failed; curl 56 SSLRead() return error -36fatal: The remote end hung up unexpectedlyfatal: early EOFfatal: index-pack failed

    解决办法:输入以下命令pod repo add master https://github.com/CocoaPods/Specs.git

    还是报错!输入以下命令:sudo xcode-select -switch /Applications/Xcode.app/Contents/Developer  (只有一个Xcode)

    sudo xcode-select -switch /Applications/Xcode X.X.X.app/Contents/Developer(多个Xcode,X.X.X为Xcode名称)

    或者输入sudo xcode-select --print-path也可

    还是没有安装成功:重新安装

    首先,删除.cocoapods目录,在终端输入以下命令:sudo rm -rf ~/.cocoapods/

    然后,重新下载安装,在终端输入以下命令:pod setup


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

    在终端中输入:sudo nvram boot-args="rootless=0"; 

    sudo reboot(电脑重启)

    再输入sudo gem install cocoapods -V


    4、ERROR: Could not find a valid gem 'cocoapods' (>= 0), here is why:Unable to download data from https://rubygems.org/ - Errno::ETIMEDOUT: Operation timed out - connect(2) (https://rubygems.org/latest_specs.4.8.gz)ERROR: Possible alternatives: cocoa pods

    原因:原始的ruby源国内被禁用解决办法:需要替换ruby的源


    5、[!] Invalid Podfile file: undefined local variable or method `en_US' for #. Updating CocoaPods might fix the issue.

    原因:单引号格式,可能是手动输入导致

    解决办法:系统偏好设置-键盘-文本-将“使用智能引号和破折号”一项取消勾选-再将podfile里面的单(双)引号修改一下


    6、ArgumentError - invalid byte sequence in US-ASCII

    原因:字符集错误

    解决办法:使用locale命令查看当前的字符集,如果都是zh,需要执行以下命令:

    export LC_ALL=en_US.UTF-8

    export LANG=en_US.UTF-8

    然后再使用locale命令查看


    7、- Use the `$(inherited)` flag, or

    - Remove the build settings from the target.

    原因:我是在已有项目中集成Cocoapods的时候遇到这个问题,原因是项目 Target 中做了一些设置,CocoaPods 也做了默认的设置,如果两个设置结果不一致,就会造成问题。

    解决方法:我想要使用 CocoaPods 中的设置,分别在我的项目中定义PODS_ROOT 和 Other Linker Flags的地方(build settings),把他们的值用$(inherited)替换掉,进入终端,执行 pod update 警告没了,回到 Xcode,build通过。

    网上还流行另外一种简单粗暴的方法:点击项目文件 project.xcodeproj,右键显示包内容,用文本编辑器打开project.pbxproj,删除OTHER_LDFLAGS的地方,保存


    8、Error installing cocoapods:activesupport requires Ruby version >= 2.3.1.

    原因:在安装cocoapods过程中提示需要Ruby的版本在2.3.1以上。

    查看当前Ruby版本,输入指令:ruby -v

    解决方法:通过rvm安装新版Ruby,输入指令:curl -L get.rvm.io | bash -s stable

    重装rvm,输入指令:rvm reload

    然后安装Ruby,输入指令:rvm install ruby

    如果出现:Requirements installation failed with status: 1.则需要输入:

    第一行:ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

    第二行:rvm autolibs read-only # read more here:https://rvm.io/rvm/autolibs

    第三行,再次安装:rvm install ruby


    9、The dependency `` is not used in any concrete target

    原因以及解决办法:Podfile升级之后到1.0.0版本,Pod里的内容必须明确指出所用第三方库的target,所以在podfile文件需要明确:

    target “YOUR_TARGRT_NAME” do

    ...

    end


    10、ERROR:  While executing gem ... (Errno::EPERM)

    Operation not permitted - /usr/bin/update_rubygems

    原因以及解决办法:Mac OSX 10.11不能使用sudo gem update —system了,需要替换成:sudo gem update-n /usr/local/bin —system


    11、ERROR:  While executing gem ... (Errno::EPERM)

    Operation not permitted - /usr/bin/pod

    原因以及解决办法:Mac OSX 10.11不能使用sudo gem install cocoapods了,需要替换成:sudo gem install -n /usr/local/bin cocoapods

    相关文章

      网友评论

      本文标题:CocoaPods安装以及常见错误总结

      本文链接:https://www.haomeiwen.com/subject/dbulattx.html