gpt4 book ai didi

gdb - 如何在GDB脚本中编写每次击中特定brkpt时都会执行的命令?

转载 作者:行者123 更新时间:2023-12-02 04:17:22 26 4
gpt4 key购买 nike

每次调用gdb时,我都需要调试一组命令-因此我决定将它们放入.gdbinit中。一切都很好,直到我决定使用commands(每次击中某个brkpt时都要执行一组gdb命令)。我的脚本如下所示:


define setup
handle SIGTRAP noprint nostop
br 'Class1::Fun1(void)'
run
br 'Class2::Run(void)'
c
br Function2
commands 3
return 0
c
end
end



Problem is , whenever I execute them one by one , it behaves perfectly , but when i source the script and run setup,它在命令后表现异常(不执行以前的操作)。

有人可以帮忙吗?

最佳答案

您可能没有将命令放在您认为的断点上。

如果您是我,请将该脚本修改为以下内容:

define setup
handle SIGTRAP noprint nostop
br 'Class1::Fun1(void)'
run
br 'Class2::Run(void)'
c
br Function2
commands
return 0
c
end
end

如果没有给出断点目标,则 commands与最近的断点关联。这样,无论您在gdb session 中具有哪些其他断点,您的命令都将与Function2处的断点关联。

关于gdb - 如何在GDB脚本中编写每次击中特定brkpt时都会执行的命令?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2227012/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com