C++ no debugging symbol found
这个问题困扰我很久,因为网上的答案大都大同小异:
分为两种:
1,是使用g++命令,然后加上-g参数,
2,是在Makefile文件中添加CFLAG+=-g
这些我都是知道的,但对我的问题一直没有本质上的解决。
问题描述
在Makefile中添加-g选项。上述第2点针对c源程序解决得很完美,但是到我这里还是失效。先贴出我的Makefile文件:
PROGS = main
CLEANFILES = core core.* *.core *.o temp.* *.out typescript* \
*.lc *.lh *.bsdi *.sparc *.uw
all: ${PROGS}
CC=g++
CFLAGS+=-g#gdb调试
main: main.o noncopyabletest.o
${CC} ${CFLAGS} -o $@ $^
@rm *.o
clean:
rm -f ${PROGS} ${CLEANFILES}
这里我的source code是:
main.cpp noncopyabletest.cpp noncopyabletest.h
执行gdb执行后,出现no debugging symbol found
现在的问题是,我明明加上了-g选项
解决办法
参考:http://stackoverflow.com/questions/20261160/gdb-no-debugging-symbols-found
在编C++程序时,使用CXX和CXXFLAG变量。