gdb有关问题

gdb问题
调试程序时,在gdb内p var,会提示

No symbol "var" in current context.

即使没有使用任何编译优化选项,仍然不能查看,放狗搜了一下,可能是这些变量被优化到寄存器中,gdb无法读取。

解决方案:

在编译是加入 ‘-gstabs+’  选项,比如:

g++ -g -Wall  -gstabs+ -o main.o main.cpp

gdb main,就可以查看局部变量了。