将多个文件编译为可执行文件时遇到问题。 我对GCC命令是:为什么GDB不创建符号文件?
gcc -g -o PartitionedHashJoin -O0 -msse4.2 -lm -DNUM_BUCKETS=2 Relations.h Relations.c PartitionedHashJoin.h PartitionedHashJoin.c
GCC编译正确,但显然不会创建一个DSYM(Mac OS)中的符号文件。 我试图剥离SSE或-lm编译器选项,但没有效果。
有没有人有一个想法,我可以如何让我的调试符号?
谢谢!
更新/编辑: 我会满足于嵌入的符号,它并没有成为一个DSYM文件,但嵌入的似乎丢失了。 dsymutil
无法在使用上述命令创建的可执行文件中找到它们。
确保在系统中安装了'dsyumutil'并阅读[this comment](http://stackoverflow.com/questions/4850788/prevent-compiling-from-generating-dsym-on-os-x-using -make/5391173#5391173)。 –
该实用程序已安装 - 感谢提示。在调用该实用程序时,它会抱怨缺少可执行文件内的调试符号 - 显然它们不是在那里创建的。 – Patrick
也试试-ggdb,但不知道它会有所帮助。 –