为了创建 .out 可执行文件,我需要输入以下命令:
我将使用回溯命令,gdb返回以下内容:
$: make
$: myprogram.out name.ged
我的程序包含一个命令行参数,因此是"name.ged"。
每当我在收到段错误(核心已转储)后运行gdb时,我输入:
$: gdb a.out core
(gdb): bt
我将使用回溯命令,gdb返回以下内容:
#0 0x4a145155 in ?? ()
#1 0x08a16ce0 in ?? ()
我甚至尝试使用up命令移动堆栈,但仍然没有运气。我无法确定程序中哪一行导致了段错误。gdb可以处理不涉及Makefile和命令参数的其他程序,因此我想知道我的命令是否有误。
myprogram.out
,则应该是gdb myprogram.out core
而不是gdb a.out core
。那里可能会有任何旧的a.out
。 - luser droog