从命令行生成的.dSYM文件(Mac)

pyr*_*hic 10 c macos gcc makefile dsym

我刚开始用C编码,并运行其他人的Makefile,默认的C编译器设置为gcc.我在Mac OSX 10.8 Mountain Lion上,我相信我使用"XCode命令行工具"安装了编译器.在命令行上运行"make"后,我会为每个程序获取这些烦人的.dSYM文件.我读到这些是调试文件,但它们真的有必要吗?有没有办法阻止它们从命令行生成?

Bre*_*erg 26

-gGCC 的标志将生成调试符号.您可以简单地从中删除该标志CFLAGS.


wbe*_*rry 9

是的,dSYM文件是必需的.具体来说,它们包含Xcode调试版本中包含的符号表; release build将符号放在这个单独的文件中.如果您需要从发布版本中分析堆栈跟踪,则需要这样做.并确保您不会丢失文件,因为再次进行构建,即使源完全相同,也不会生成可用的dSYM文件.每个构建都有一个UUID,即使源没有更改,它也会随着每个构建而变化.(我想它包括时间戳甚至是随机数.)

如果您丢弃dSYM文件,那么如果您突然发现您的应用程序崩溃了很多,您可能会感到抱歉.