GDB:如何获取执行历史记录

1 gcc gdb

我是编译器领域的新手.我正在使用gcc,我想获得特定运行程序的执行历史记录,即只有那些在上次运行中实际执行的语句.

用gdb可以吗?我无法在gdb中获得可以输出已执行语句的相关选项.或者还有其他获取执行历史的方法吗?

此致,Nikhil.

xel*_*o52 5

流程记录可能是您正在寻找的.该链接有一个快速教程和功能概述.

从链接的维基页面:

使用-g编译该程序,并将其加载到gdb中,然后执行以下操作:

 (gdb) break main  
 (gdb) run  
 (gdb) record
Run Code Online (Sandbox Code Playgroud)

这将打开进程记录,现在将记录正在调试的程序执行的所有后续指令.

请注意,您可以随时(不仅仅是主要)开始进程录制.您可以选择稍后或甚至更早开始.唯一的限制是您的程序必须运行(因此您必须在"记录"之前键入"run").如果您想从程序的第一条指令开始录制,可以这样做:

 (gdb) break _start   
 (gdb) run   
 (gdb) record
Run Code Online (Sandbox Code Playgroud)

希望这可以帮助.