Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

.dSYM files generated from command line (Mac)

I just started coding in C, and ran someone else's Makefile with the default C compiler set to gcc. I am on Mac OSX 10.8 Mountain Lion and I believe I installed the compiler with "XCode Command Line Tools." After running "make" on command line, I get these annoying .dSYM files for each program. I read that these are debug files, but are they really necessary? Is there any way to prevent them from being generated from command line?

like image 233
pyrrhic Avatar asked Jul 19 '13 10:07

pyrrhic


People also ask

What is dSYM file in iOS?

A dSYM file is an ELF file that contains DWARF (debugging with attributed record formats) debug information for your application. DWARF is a debugging file format that supports source-level debugging.


2 Answers

The -g flag to GCC will generate debug symbols. You may simply remove that flag from CFLAGS.

like image 66
Brendan Berg Avatar answered Sep 24 '22 04:09

Brendan Berg


Yes, the dSYM files are necessary. Specifically, they contain the symbol tables that are included within Xcode debug builds; release builds put the symbols in this separate file. If you ever need to analyze a stack trace from a release build you will need this. And make sure you don't lose the files, because doing the build again, even if the source is absolutely the same, won't produce a usable dSYM file. Each build is given a UUID and that changes with each build, even if the source has not changed. (I guess it includes a timestamp or even a random number.)

If you throw away the dSYM files, then if you suddenly find your app crashing a lot, you may be sorry.

like image 35
wberry Avatar answered Sep 24 '22 04:09

wberry