12

我正在尝试使用 GDB 和 KDEvelop 在 Knoppix VM 下调试控制台应用程序。KDevelop 和 GDB 不会在我的断点处中断。我怀疑这是因为它们没有调试符号。

如果我是正确的,我该如何更改我的 Makefile 来创建它们。也许问题出在其他地方?

问候, 爱丽儿

4

3 回答 3

22

包含-g在发送到编译器和链接器的标志中。这个的默认变量是CFLAGSLDFLAGS分别。

第二步:-s从标志中排除(-s意味着strip

于 2009-12-20T23:03:48.757 回答
6

如果您能够看到源代码并设置断点,那么您可能已经建立了调试符号。但是,通常的顺序是:

gcc -g -o (outputname) (source files...)
gdb outputname

提供更多关于你在做什么以及你看到什么信息的细节,我们可以更具体。

于 2009-12-20T23:04:11.960 回答
3

完整的例子是:

CFLAGS =-g

all: program.o
    gcc -o program program.o

这里CFLAGS适用于编译器和链接器。

于 2016-12-20T12:23:53.460 回答