How to generate Debug symbols with Makefile for C? [Linux]
I'm trying to use GDB and KDEvelop to debug a console app under Knoppix VM. KDevelop and GDB don't break at my breakpoints. I suspect it's because they don't have debug symbols.
If I'm correct ho开发者_如何学编程w do I need to change my Makefile to create those. Maybe the problem is somewhere else?
Regards, Ariel
Include -g
in the flags sent to the compiler and linker. The default variables for this are CFLAGS
and LDFLAGS
respectively.
The second step: exclude -s
from flags (-s
means strip)
If you are able to see source and set the breakpoint, then you probably have debugging symbols established. However, the usual sequence is:
gcc -g -o (outputname) (source files...)
gdb outputname
Give more specifics about what you are doing and what messages you see and we can be more specific.
The full example would be:
CFLAGS =-g
all: program.o
gcc -o program program.o
The CFLAGS
here is applied to both the compiler and the linker.
精彩评论