I read a lot of thing and discovery this configs have 2 side effect:
I am building program for iOS, so I want my binary to be the smallest possible. This mean:
So I have to set YES for AppStore version and NO for Debug?
Strip Debug Symbols During Copy ( COPY_PHASE_STRIP ): Made no difference, the sequence is unchanged Strip Linked Product ( STRIP_INSTALLED_PRODUCT ): Made no difference, the sequence is unchanged
When GenerateDSYMFile is executed, all that is left are the debugging symbols within the app. These symbols are then also stripped. BUT they are stripped after the dSYM file already exists and not before as is the case with the static library.
However, dumping the content of the dSYM file that is generated as part of the archive reveals that it does not contain the debugging symbols of the static library ( lib.xcodeproj ). To be more specific, executing the command
You are correct, set it to YES for AppStore build and NO for debugging builds. Even when you build you AppStore version, there is dsym file containing all symbols you need to symbolicate your crash logs.
A dSYM file is nothing a "debug symbols file". It is generated when the "Strip Debug Symbols" setting is enabled in the build settings of your project.
The default debug info format for the Debug configuration for new iOS projects is "DWARF with dSYM file", but for new OS X projects is just "DWARF".
If you're running under the debugger, of course, it will just stop at the point of the crash, so you don't need to symbolicate a crash report.So set 'DWARF' when application is in development and set 'DWARF with dSYM' at the time of release.
You should apply this settings as well:
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With