这个错误通常表示二进制文件与调试符号不共存。可以尝试在编译时添加调试符号(-g选项),然后重新编译并再次尝试使用GDB进行调试。以下是一些具体的步骤:
CFLAGS = -g -Wall
以下是一个示例Makefile文件:
CC=gcc CFLAGS=-g -Wall
all: program
program: source1.o source2.o $(CC) $(CFLAGS) -o program source1.o source2.o
source1.o: source1.c $(CC) $(CFLAGS) -c source1.c
source2.o: source2.c $(CC) $(CFLAGS) -c source2.c
clean: rm -f program *.o
在这个示例中,我们将-g选项添加到CFLAGS变量中,然后使用该变量编译我们的程序。