一种新的第三方库管理工具:Carthage

如何使用Carthage管理iOS依赖库

Podfile Syntax Reference v1.1.0.rc.3

https://guides.cocoapods.org/syntax/podfile.html

正文:

具体方法在

iOS 如何在一个存在多个project的workspace中引入cocoapods管理第三方类库

Cocoapods 版本1.0.1

我在按上述链接转换的时候,遇到的问题:

1,

[!] `xcodeproj` was renamed to `project`. Please update your Podfile accordingly.

Solution:

xcodeproj 'MyProj/MyProj.xcodeproj'

just replace xcodeproj to project

project 'MyProj/MyProj.xcodeproj'

2,eg:

[!] The `Ecosphere [Debug]` target overrides the `HEADER_SEARCH_PATHS` build setting defined in `../Pods/Target Support Files/Pods-Ecosphere/Pods-Ecosphere.debug.xcconfig'. This can lead to problems with the CocoaPods installation

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

- Remove the build settings from the target.

[!] The `Ecosphere [Debug]` target overrides the `OTHER_LDFLAGS` build setting defined in `../Pods/Target Support Files/Pods-Ecosphere/Pods-Ecosphere.debug.xcconfig'. This can lead to problems with the CocoaPods installation

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

- Remove the build settings from the target.

......

这种警告是不能忽视的,它带来的直接后果就是无法通过编译。

而产生此警告的原因是项目 Target 中的一些设置,CocoaPods 也做了默认的设置,如果两个设置结果不一致,就会造成问题。

我想要使用 CocoaPods 中的设置,分别在我的项目中定义`PODS_ROOT` 和 `Other Linker Flags`的地方,把他们的值用`$(inherited)`替换掉,

进入终端,执行 pod update

警告没了,回到 Xcode,build通过。

网上还流行另外一种简单粗暴的方法

点击项目文件 project.xcodeproj,右键`显示包内容`,用文本编辑器打开`project.pbxproj`,删除`OTHER_LDFLAGS`的地方,保存,回到 Xcode,编译通过。

因为我的工程已经对 "HEADER_SEARCH_PATHS" 和"OTHER_LDFLAGS"做过配置,

所以 在对应的工程Build Settings中对应的地方填上:

$(inherited) ,解决;

3,

在使用cocospods的时候,如果修改了导入的第三方库源文件,那么当使用pod update的时候修改的代码会被作者的原文件覆盖掉。
所以问题来了,遇到确实需要修改源代码的时候,解决方案
1. 不用cocoapods改用手动导入第三方库
2. 将需要修改的第三方库fork一份到自己的github,在里面做完修改之后,将podfile修改为:
platform :ios, '7.0'
pod '要导入的库', :git => 'https://github.com/我的github/要导入的库'

4,

最新文章

  1. Linux上如何查看物理CPU个数,核数,线程数
  2. oracle 自增长序列
  3. Android深度探索HAL与驱动开发 第四章 源代码下载和编译
  4. 洛谷 洛谷 P1011 车站 Label:续命模拟QAQ 未知50分
  5. COM的永久接口
  6. 删除docker私有库镜像
  7. Spring小结
  8. Android核心分析之十六Android电话系统-概述篇
  9. java commons-lang 工具包 逃脱工具 转unicode 及其他
  10. hdu1874畅通工程续 (dijkstra)
  11. MyEclipse2016统一字符编码
  12. ThinkJS框架入门详细教程(二)新手入门项目
  13. iOS 中如何判断当前是2G/3G/4G/5G/WiFi
  14. javaweb项目环境搭建,jdk,tomcat,myeclipse,sqlserver安装 配置
  15. Centos7通过SSH使用密钥实现免密登录
  16. yii2的数据库读写分离配置
  17. 01:jQuery的下拉选select2插件用法
  18. CORS跨域模型浅析及常见理解误区分析
  19. Java精选笔记_JavaBean
  20. angularjs ui-grid cellTemplate checkbox ng-checked

热门文章

  1. TestNG
  2. windows系统IIS环境下如何部署MVC项目
  3. rbd snap(1)
  4. C++学习笔记 封装 继承 多态 重写 重载 重定义
  5. 你知道吗?使用任何HTML5开发工具都可开发iOS、Android原生App
  6. android:descendantFocusability用法简析
  7. LUA5.3的BNF范式学习笔记
  8. ActiveMQ 复杂类型的发布与订阅
  9. RabbitMq中的交换机
  10. 写了placement new就要写placement delete