【发布时间】:2012-01-13 12:31:41
【问题描述】:
我正在使用 gdbserver 从嵌入式设备进行调试:
./gdbserver HOST:5000 /home/test_app
在我的PC中,我是这样执行gdb的:
arm-none-linux-gnueabi-gdb test_app
应用程序执行后,我收到要调试的 Segfault,但无法知道是哪一行产生的:
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 715]
0x31303030 in ?? ()
(gdb) bt
#0 0x31303030 in ?? ()
#1 0x0000dff8 in ?? ()
#2 0x0000dff8 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)
(我必须说我对 GDB 完全陌生)
【问题讨论】:
-
你用什么标志编译的? GDB 是否知道从哪里获取您的源文件,以便它可以显示它停止所在的行?
-
我不明白。你的电脑是ARM的?而且您似乎根本没有连接到 GDB 服务器。
-
能否请您发布您的编译器执行行和完整的 GDB 命令?我同意 Tomalak Geret'kal 的观点,这里肯定缺少一些东西,至少连接到 GDB 服务器和设置源目录的命令。
标签: c++ gdb segmentation-fault