Point instruments to ~/Library/.../DerivedData rather than /var/.../Application on device when profiling

When profiling on device, my symbols are missing. Going to File -> Symbols, I see that the binaries being pointed are is in /private/var/... and /var/... which I believe are paths on the device itself. I can fix this by manually changing each one to point to the correct place in DerivedData, but it's very tedious. Is there an automated way to achieve this?

Replies

The automatic way is that Instruments uses Spotlight to locate the dSYMs for your application and uses those to symbolicate your app.

You need to make sure to actually create dSYMs during your build process, as well as build to a location that is indexed by Spotlight.

Thanks for the reply. Is there no way to do this without generating dSYMs? That process significantly slows build time in our project. It would be great do be able to rely purely on DWARF for this.

Not at this time (except for the manual method you mentioned.) You can turn dSYM generation on just for Release builds, so it at least won't affect your Debug build times.

You can file a radar requesting this feature so we have a record of your 'vote' for this feature.