PHD
PHD

Reputation: 646

xcodebuild far slower than Xcode?

Building from the command line with xcodebuild is orders of magnitude slower than building the same project, same scheme, same target from within Xcode. Does anyone know why this might be the case and how I might speed up my xcodebuild build?

I'm invoking xcodebuild as follows:

xcodebuild -scheme <SCHEME> -workspace <WORKSPACE> -configuration Debug -sdk iphonesimulator7.0 -jobs 12 build

for building on a 12-core Mac Pro. I guessed at the -jobs setting but it seems reasonable. Does anyone have any advice? Is there a way, by analyzing Xcode's build log, to tell what settings for xcodebuild most closely map to what Xcode itself is using? Thanks!

Upvotes: 17

Views: 1582

Answers (2)

Zeng Liang
Zeng Liang

Reputation: 331

When using xcodebuild test that will reboot the simulator each time. It is the main reason case the xcodebuild slowly. When you using xcode test directly, The simulator will not boot twice after booted.

You can try this:

xcodebuild -project Example.xcodeproj \
    -scheme ExampleTests \
    -disable-concurrent-destination-testing \
    -destination 'platform=iOS Simulator,name=iPhone 13' \
    -sdk iphonesimulator \
    CODE_SIGNING_ALLOWED="NO" \
    test
  1. -disable-concurrent-destination-testing disable clone simulator in Xcode 14 and test in the same simulator
  2. CODE_SIGNING_ALLOWED="NO" disable signing test target will faster

Upvotes: 0

mwl
mwl

Reputation: 161

While this alone may not explain the slowness of xcodebuild compared to IDE, I've seen some improvements if I disable Spotlight indexing on ~/Library/Developer/Xcode/DerivedData directory.

Upvotes: 1

Related Questions