编译速度优化(iOS)

前言

优化点

  • 一、优化工程配置

  • 二、使用 CocoaPods 管理第三方库:利用 cocoapods 插件 cocoapods-packager 将任意的 pod 打包成 Static Library,省去重复编译的时间;(缺点是不方便调试源码,如果库代码反复修改,需要重新生成二进制并上传到内部服务器)

  • 三、CCache(CCache 是一个能够把编译的中间产物缓存起来的工具,不需要过多修改项目配置,也不需要修改开发工具链)----废弃:Xcode10 之后修复了Xcode 9 有个很偶然的 bug:在源码没有任何修改的情况下经常触发全新编译

  • 四、distcc: 是一个分布式编译工具,它原理是把本地多个编译任务分发到网络中多个机器,其他机器编译完成后,再把产物返回给本机上执行链接,最终得到编译结果。

  • 五、硬件解决:如把 Derived Data 目录放到由内存创建的虚拟磁盘,或者购买最新款的 iMac Pro…

  • 从编译器下手:正如我们平常做的客户端性能优化,在优化之前,先分析原理,输出每个地方的耗时,针对耗时做相对应的优化(- 使用工具优化头文件引入;尽量避免头文件里包含 C++ 标准库

一、优化工程配置

  • 1、将 Debug Information Format 改为 DWARF
    Debug 时是不需要生成符号表,可以检查一下子工程(尤其开源库)有没有设置正确。

编译速度优化(iOS)_第1张图片

  • 2、将 Build Active Architecture Only 改为 Yes
    Debug 时是不需要生成全架构,可以检查

你可能感兴趣的:(iOS,进阶)