GDB自动跟踪

GDB自动跟踪,gdb,Gdb,如果我设置了一个断点,如果GDB点击了断点,那么它会显示代码行。如果我输入n或next,那么GDB将打印出代码的下一行 我想知道是否有一种方法可以跟踪通过GDB执行的实际代码行 例如,如果我输入n或next 100次,那么我将获得100行代码的跟踪。我希望自动执行此操作,而不是输入n或next 请注意,像您看起来希望的那样收集next跟踪极不可能帮助您调试任何实际大小的程序中的实际问题:程序的大部分时间都花在循环中,重复执行next只会给您带来永无止境的循环重复流 也就是说,你可以像这样实现你想

如果我设置了一个断点,如果GDB点击了断点,那么它会显示代码行。如果我输入n或next,那么GDB将打印出代码的下一行

我想知道是否有一种方法可以跟踪通过GDB执行的实际代码行


例如,如果我输入n或next 100次,那么我将获得100行代码的跟踪。我希望自动执行此操作,而不是输入n或next

请注意,像您看起来希望的那样收集
next
跟踪极不可能帮助您调试任何实际大小的程序中的实际问题:程序的大部分时间都花在循环中,重复执行
next
只会给您带来永无止境的循环重复流

也就是说,你可以像这样实现你想要的:

(gdb) shell perl -e 'print "n\n" x 100' > gdb.cmd
(gdb) source gdb.cmd

请注意,像您看起来希望的那样收集
next
跟踪,极不可能帮助您在任何实际大小的程序中调试实际问题:程序的大部分时间都花在循环中,重复执行
next
只会给您带来永无止境的循环重复流

也就是说,你可以像这样实现你想要的:

(gdb) shell perl -e 'print "n\n" x 100' > gdb.cmd
(gdb) source gdb.cmd

从当前位置放置一个断点100行,然后继续执行

从当前位置放置一个断点100行,然后继续执行

如何收集接下来执行的100行的跟踪?如何收集接下来执行的100行的跟踪?