CocoaPods:说点关于它的
记录一下遇到的问题
1.CocoaPods 版本旧
The version of CocoaPods used to generate the lockfile is higher that the one of the current executable. Incompatibility issues might arise.
sudo gem update cocoapods
2.第一次 pod install 后,很完美,一切都正常,当删除掉部分配置文件(Pods.xcconfig)后,再重新 pod install 出现问题
“第三方类库无法引用”
Bing(Google 无法使用)了好半天,大致猜到问题出现在 Build Settings 的 Search Path 上,追加 "${SRCROOT}/Pods/xxx" 等,可以引用了。
问题:原来的 ${PODS_ROOT} 为什么失效了,找不到关于它的任何定义?
于是搜索 ${PODS_ROOT} 是哪里定义的,找到了答案:
Build Settings 中的 User-Defined(在最下方) 中,有一个定义 ${PODS_ROOT} = ${SRCROOT}/Pods。
3.恢复
创建了一个新的项目,项目的根目录 touch 一个 Podfile,vim 编辑一下,把需要导入的第三方类库写上,保存退出,执行 “pod install”,等待执行结束。
打开新生成的 xx.xcworkspace,观察新的项目的设置里有哪些新的变化。
首先,找到 ${PODS_ROOT},对比我之前的项目,项目中没有,看来是因为删除了那个文件后的操作使得这个定义没有被设置上。在这页顶部的搜索框左边,有个“+”模样的按钮,点击“Add User-Defined Setting,人工添加 ${PODS_ROOT} = ${SRCROOT}/Pods。
然后添加 Search Paths
切换到 Build Phases
照着新项目添加两个脚本“Check Pods Manifest.lock” 和 “Copy Pods Resources”
补充:
——————
运行后,仍然报了些关于“xxx 找不到”的错误,看了一眼 Pods.xcconfig 这个文件,发现我所在补救的事情在这里都写了,还差一个 Other Linker Flags 没有设置,复制粘贴到 Build Settings 中,再次运行,都好了。