恢复执行后,调试程序崩溃

时间:2016-01-20 16:13:15

标签: c debugging gdb

我正在使用Eclipse(gdb)和gdbserver调试远程程序。我将Eclipse附加到已经运行的程序中。然后它在我的断点所在的位置停止执行。这一切都运作良好。我可以看到变量的内容。大。但是,如果我想通过例如恢复执行恢复或跳过,该程序给我一个分段错误。您有任何想法,如果调试器进来可能会发生分段错误吗?

该程序使用多个线程。 最后一个gdb跟踪输出如下。这里抛出了一个SIGILL。


    064,490 59-exec-next --thread 7 1
    064,629 59^running
    064,629 *running,thread-id="7"
    064,629 (gdb) 
    064,685 *stopped,reason="signal-received",signal-name="SIGILL",signal-meaning="Illegal instruction",\
    frame={addr="0x000000000044c2df",func="func_func",args=[{name="this",value="0x4053b8"}],fil\
    e="src/funcs.c",fullname="/home/local/wolle/src/funcs.c",line="100"\
    },thread-id="7",stopped-threads="all",core="1"

1 个答案:

答案 0 :(得分:0)

好吧,似乎问题是pid命名空间问题。您需要处于正确的命名空间中。 - 先生