2

Can any one help me to understand in simple terms that what is debug symbols? When to use them.

How do I make sure the my iOS application stripped of debug symbols. Some of other answer suggested that under Targets> Build settings> Deployment > SET NO to strip Debug Symbol During Copy.

But I have only Debug and Release entries and both are SET NO.

1) DO I have to add Distribute entry and SET it to NO? 2) Once I have SET this items to NO how do I make sure stripping debug symbol are now working?

Nitya
  • 849
  • 1
  • 11
  • 25

1 Answers1

3

You probably want to set Strip Debug Symbols During Copy to YES for Release/Distribution configurations. You can compare binary size, the one with debug symbols will be larger.

Debug symbols basically means that extra debugging information is included in the binary (e.g. method names are not stripped/removed etc.). Usually when building with Xcode, it creates a special file that contains these symbols which are later used for let's say symbolicating crash reports.

tadelv
  • 114
  • 4
  • Thanks vid Tadel Unfortunately there is no change in size. Do I have to add Distribute Entry?? – Nitya Aug 22 '13 at 11:16
  • Well it depends on what you want to do. If you are still developing the application, leave the settings as they are and use the Debug configuration. Once you are ready to release, follow Apple's online guide for creating a Distribution configuration. Good luck! – tadelv Aug 22 '13 at 11:53
  • When distributing in binary form (close-source) are the debug symbols a threat? – André Fratelli Jun 17 '15 at 17:30
  • 1
    @AndréFratelli I wouldn't consider them a threat per-se. They only add in the binary size. iOS applications are encrypted by default so you would first need to decrypt them in order to dump debug symbols (not so easy). – tadelv Aug 08 '15 at 08:55