文章目录:
我在windows上用MinGW的gdb其中list命令用不了
Breakpoint 1 at 0x401317
很可能你的程序编译时没有加入-g选项,加入-g试一下
为什么你的执行程序里没有行号信息呢,正常的应该是
Breakpoint 1 at 0x401317:file xxx
能否给出更多信息
GDB调试无法加载源码
你使用Makefile编译调试的吧。
注意Makefile的写法,一个空格也会造成错误的。
在编译的代码中添加 -g 和 -Wall 。-g是为了GDB调试用的,-Wall可以显示全部的警告,对你分析程序很有好处。
这个Segemental fault 是段错误,造成这个错误的原因有很多,可能是内存 或者 栈溢出,出现这个错误需要功过GDB反复调试,查看错误原因。
gdb加载动态库成功,但是不能显示动态库中的源码(gdb+gdbserver)
因为具体的给的不够详细,不清楚你遇到的情况。
如果仅从断点上看,应该就是CApartment.cpp:55
但是,如果你的程序编译的时候,不是-O0,那个可能回不到源码,只能看汇编。
1、有时候(很少)就是编译器的错误。
2、还有可能就是你调试的程序和你的源码不匹配
3、你的程序已经崩溃了,破坏了堆栈或者GDB需要的数据。
4、这个地方有特殊的定位信息
5、其他情况,还是比较多的,经常遇到。
如果懂汇编,最好看看汇编。
如果不懂,看看那一条语句是最后一条能够跟踪的语句。
仔细看看最后一条语句的所有变量,应该能猜出来是什么问题。
所有变量,应该能猜出来是什么问题。
文章目录:1、我在windows上用MinGW的gdb其中list命令用不了2、GDB调试无法加载源码3、gdb加载动态库成功,但是不能显示动态库中的源码(gdb+gdbserver)我在windows上用MinGW的gdb其中list命令用不了Breakpoint 1 at 0x401317很可能
的警告,对你分析程序很有好处。这个Segemental fault 是段错误,造成这个错误的原因有很多,可能是内存 或者 栈溢出,出现这个错误需要功过GDB反复调试,查看