有没有办法输出在 xcode 构建期间编译 swift 文件所花费的时间?
我想从命令行编译以触发与 xcode 相同的构建,但要包括编译每个文件所花费的时间。
显示每个文件的Report Navigator
完整构建报告,但没有与之关联的时间范围。
我想减少 Swift 1.2 项目的编译时间,因为清理后大约需要 5 - 10 分钟,或者在严重依赖文件中更改源后需要 3 -5 分钟。
有没有办法输出在 xcode 构建期间编译 swift 文件所花费的时间?
我想从命令行编译以触发与 xcode 相同的构建,但要包括编译每个文件所花费的时间。
显示每个文件的Report Navigator
完整构建报告,但没有与之关联的时间范围。
我想减少 Swift 1.2 项目的编译时间,因为清理后大约需要 5 - 10 分钟,或者在严重依赖文件中更改源后需要 3 -5 分钟。
您可以添加...</p>
-Xfrontend -debug-time-function-bodies
…到Swift 编译器中的其他 Swift 标志 - 自定义标志部分(构建设置)。
注意:您必须保持这些标志的相同顺序。-Xfrontend
表示下一个标志应该传递给前端。如果您颠倒顺序,它将不起作用。
然后您可以在构建日志中获取编译时间:
当您确实想要优化编译时间时,这很有用,并且在向Apple Swift人员报告编译时间慢的问题时,最好附上这种构建日志。
归功于 Joe Pamer Errant编译器黑客。目前在 Apple(Swift、Clang)担任工程经理,之前在 Microsoft(TypeScript、F#、JavaScript、.NET)担任工程经理。他在推特上回应了 Rob Rix 关于分析 Swift 编译的问题。这让我很好奇,所以,我反汇编了编译器,检查了文本部分是否有更多标志,并发现了其他隐藏选项。不要在生产代码中使用它们,只需使用它们即可。
整个项目的构建时间。在终端中运行以下命令...</p>
defaults write com.apple.dt.Xcode ShowBuildOperationDuration YES
…重新启动 Xcode,清理和构建,然后…</p>
对您的pods项目执行上述操作