How to enable build timing in Xcode?

后端 未结 5 1763
失恋的感觉
失恋的感觉 2020-12-22 19:24

I\'d like to know how long my project\'s builds take, for example by displaying it in the build pane. Is this option available somewhere in Xcode?

Thanks.

相关标签:
5条回答
  • 2020-12-22 19:40

    I solved it with Run Scripts in Build Phases

    I have added one Run Script at start point of the build:

    echo $(date +%s) > ../build_start_time

    and one at the end:

    START=$(cat ../build_start_time)
    END=$(date +%s)
    echo $(echo "$END - $START" | bc)
    

    Now i can see the time in Build Log -> All Messages

    0 讨论(0)
  • 2020-12-22 19:45

    Type this in the terminal:

    defaults write com.apple.dt.Xcode ShowBuildOperationDuration YES
    

    Duration appears in the activity viewer after a build, alongside the "Succeeded" message.

    If you are running the app, the status will be replaced by the running status before you can see the duration.

    This replaces the entry that was used in older versions of Xcode:

    defaults write com.apple.Xcode ShowBuildOperationDuration YES

    Xcode may need to be closed before you enter this command. Durations should appear at the bottom left of the project window.

    Comment from an Xcode developer: "As with all undocumented user defaults, this is unsupported, assumed (but not guaranteed) accurate, and not assured to be effective in future versions."

    0 讨论(0)
  • 2020-12-22 19:50

    After Xcode 10

    • if you build from command-line, use -buildWithTimingSummary to see the build time summary.
    xcodebuild -buildWithTimingSummary
    
    Build Timing Summary
    CompileSwiftSources (1 task) | 5.434 seconds
    PhaseScriptExecution (1 task) | 5.046 seconds
    CompileAssetCatalog (1 task) | 2.788 seconds
    CompileStoryboard (1 task) | 1.880 seconds CompileMetalFile (5 tasks) | 1.735 seconds
    CopySwiftLibs (1 task) | 0.740 seconds
    Ld (2 tasks) | 0.306 seconds
    CodeSign (3 tasks) | 0.177 seconds
    CompileC (1 task) | 0.170 seconds
    MetalLink (2 tasks) | 0.046 seconds
    Ditto (4 tasks) | 0.032 seconds
    LinkStoryboards (1 task) | 0.023 seconds
    
    • If you use Xcode, Product->Perform Action->Build With Timing Summary. And see building time summary in the Xcode building log.
    0 讨论(0)
  • 2020-12-22 19:54

    In Xcode 10, you are now able to see a great breakdown of the build times using their Timing Summary feature.

    Product->Perform Action->Build With Timing Summary

    This will show each of your target build times and the overall project build time. You can do a lot of analysis using this data and build times will depend on your hardware. Check out Building Faster in Xcode from WWDC 2018 if you care to learn more.

    However, Xcode keeps track of all your builds by default and you can examine their times and logs by going to their Report Navigator.

    Build Logs within Report Navigator

    0 讨论(0)
  • 2020-12-22 19:54

    no, but you could use the command line. cd to your project directory and type

    time xcodebuild
    
    0 讨论(0)
提交回复
热议问题