[转]iOS CocoaPods 安装笔记(持续更新)

转载自:邦Ben《iOS CocoaPods 安装笔记(持续更新)

今天悲催的公司电脑被空调积水给泡了,要重新安装,反正我是记不住这些步骤的了,所以从以前的CSDNblog中迁移过来方便看
CocoaPods 能让开发者非常方便的使用第三方类库,不用自己去管理依赖问题,以及非arc等编译条件在mac 系统下调用终端:
基本的步骤是 gem install cocoapods -> pod setup -> pod init -> edit Podfile -> pod install -> open xcworksapce (期间出现对应的问题 就对应解决)

1、安装cocoapods

转载注:这里也可以brew搞定

为了防止gem安装更新失败,因此先替换为国内的淘宝的镜像源,否则在天朝的网络限制中会很慢很慢

检查一下看看

使用gem安装cocoapods

如果gem出现错误先更新gem然后重新开始

2、设置pod源码(初始化cocoapods) — 重要问题都在这

如果pod setup 可以将github的代码下载得动,那你就不用去折腾什么oschina源了

如果setup很慢甚至卡住 (都是因为天朝的网络原因)

为了pod install / update 的时候加快速度,specs仓库镜像换成coding上的镜像或者是 oschina 上的镜像所以建议先更换数据源

如果提示失败或者setup不成功,方案有两种:

1) 手动将代码clone下来 【该方法比较有效】

转载注:网上有的文章指出可以pod repo 直接更换master源,这个方法在1.0.0已经不好用了,会提示如下错误:

正确做法是,自己从一个镜像clone,然后执行:

2) 降到0.39,setup之后再升级到1.0吧

这个好像不好用

3、Cocoapods 具体使用方法

直接在需要加入cocoapods项目的根目录新建Podfile文件

编辑 Podfile文件

单独某个target依赖pod( 在1.0中要求必须指定target了)

然后再执行 pod setup 即可以后每次更改 Podfile文件 则执行 pod update 即可如果在初始化的时候出现:如果安装后出现

则修改 Podfile 为

update 后如果出现大量提示

则项目中Building setting 设置中 搜索Other Linker Flags的地方,添加一条

以后打开项目点击xcworksapce后缀的文件,不要点击原来的项目文件


至此,已经结束,愉快地使用吧

4、出现问题总结

如果 pod update / pod install 命令执行过慢

(首次运行的时候不要)执行pod install还是pod update都卡在了Analyzing dependencies不动原因在于当执行以上两个命令的时候会升级CocoaPods的spec仓库,加一个参数可以省略这一步,然后速度就会提升不少。
加参数的命令如下:

gem install 出现 ERROR: While executing gem … (Gem::FilePermissionError)

解决方法:

或者:

或者重新安装rvm

出现 Invalid \Podfile file

这是编码的问题,有两种原因,
1.你的设备确实不支持utf8,
2.你本身录入文本有问题查看编码

执行命令后出现

发现都是zh,强制设置一下

再检查一下

好像好了,继续pod install吧

问题依然把所有可能的配置都试一遍

然后

然后

 

这些都设置完一般不会出现问题了,再有问题,可能是文本录入的问题2的解决办法,如果你是手动输入的这个需要注意,copy别人的也要检查一下打开键盘偏好设置设置单引号格式,当然冒号我还没找到怎么设置,一般错误会提示给你哪写错了这里不再提示utf8的错误了,输入法的错误,但是我切换了半天设置了半天还是没解决冒号,只能吧

这个错误是在升级阶段出现的,升级

  • 使cocopods管理开源库编译出现Library not found for -lPods问题的解决方法
  • 点击菜单栏上 Product > Edit Scheme
  • 选择Build
  • 加入Pods static library, 并且保证 pods 处于第一个位置
  • Clean and build 项目

如果在导入头文件的时候发现无法自动补全,或者PCH文件中提示File not found

在User headers search path(在Project 和 Target 都修改)中

Jenkins 脚本打包中出现 uft-8问题

在pod install 之前执行

2016.10.27补充:如何更换pod版本

2016.11.07补充:如何使用两个pod版本

2016.11.09补充:如何只升级某个pod的版本

Leave a Reply

Your email address will not be published.