有没有办法在xcode构建期间将输出编译swift文件所需的时间变成输出?
我想从命令行编译以触发相同的构建xcode但是要包括编译每个文件所花费的时间。
Report Navigator
显示每个文件的完整版本报告,但没有与之关联的时间范围。
通过查看和加载状态等编译时间不清楚它是更具人性化的风格。
我想减少Swift 1.2项目的编译时间,因为在干净后需要大约5-10分钟,或者在严重依赖文件中更改源代码后需要3-5分钟。
答案 0 :(得分:36)
您可以添加...
-Xfrontend -debug-time-function-bodies
...到 Swift编译器中的其他Swift标志 - 自定义标志部分(构建设置)。
注意:您必须保持这些标志的顺序相同。 -Xfrontend
表示下一个标志应该传递给前端。如果您颠倒订单,它将无效。
然后您可以在构建日志中获得编译时间:
当您希望优化编译时间时,这很有用,并且在向Apple Swift guys报告有关编译时间慢的问题时附加此类构建日志也很有用。
归功于Joe Pamer 错误的编译器黑客。目前是Apple(Swift,Clang)的工程经理,以前在微软(TypeScript,F#,JavaScript,.NET)。他在推特上发布了对Rob Rix关于分析Swift编译的问题的回复。这让我很好奇,所以,我反汇编编译器,检查文本部分以获取更多标志并找到other hidden options。不要在生产代码中使用它们,只需使用它们。
整个项目的建设时间。在终端中运行以下命令...
defaults write com.apple.dt.Xcode ShowBuildOperationDuration YES
...重启Xcode,清洁&建立和...