首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Xcode中Swift的编译时间非常长

Xcode中Swift的编译时间非常长
EN

Stack Overflow用户
提问于 2017-03-28 10:23:07
回答 2查看 3.8K关注 0票数 8

我有三个iOS项目:

  • 第一个- 35k Swift LOC,Swift 2.1 (或2.0?),使用Xcode 7.2.3编译
  • 第二个- 15k Swift LOC,Swift 2.3,使用Xcode 8.2.1编译
  • 第三个- 15k Swift LOC,Swift 3.0,使用Xcode 8.2.1编译

所有这些的编译时间都是很糟糕的(干净构建的10+分钟),而且它们的开发速度正在放缓到爬行。

我已经试过了:

  • 使用Whole Module Optimization
  • C Dialect更改为编译器默认值
  • 分析项目的构建时间并优化瓶颈(用6-10 s来编译数组连接、零合并操作符等的几种方法),这些方法减少了15秒--完全没有明显的差别。
  • HEADERMAP_USES_VFS = YES
  • 还有几个我现在不记得了

如果这有关系的话,我将在2014年底开发一款带有SSD、8GB内存和2.6ghz i5的mini。

有人知道这可能是什么原因,该如何处理,甚至是目前的任何解决办法?从我所读到的SO和其他地方来看,这似乎是一个未解决的编译器问题。

编辑:是的,我使用Cocoapods作为依赖项。我会尝试搬到迦太基看看会发生什么。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-03-28 10:31:06

尝试在“生成设置”中设置以下内容作为解决办法。我猜你只有一个目标。

  1. 将构建活动体系结构设置为“是”。
  2. 将优化级别设置为无-Onone
  3. 添加名为"SWIFT_WHOLE_MODULE_OPTIMIZATION“的用户定义设置,其值为"YES”。
  4. 清空派生数据并生成。

然后,您也可以使用这个工具来分析任何慢速编译Swift文件:https://github.com/RobertGummesson/BuildTimeAnalyzer-for-Xcode

我经历了6到7分钟的构建时间。我离开了Cocoapods,开始使用迦太基( Carthage ),这有助于清洁建筑。即使在那时,构建仍然需要3分钟。最大的改进来自我前面提到的步骤。

更新

而不是添加用户定义的设置,在您的调试构建设置优化级别为‘快速,整个模块优化’。然后在其他Swift旗帜中为您的调试构建添加'-Onone‘。

票数 6
EN

Stack Overflow用户

发布于 2018-01-26 14:24:42

这是斯威夫特网站上的一个公开话题:https://bugs.swift.org/browse/SR-6037,希望他们能尽快修复它。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43067004

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档