繁体   English   中英

如何在gdb中为函数的所有调用设置断点?

[英]How to set a breakpoint in gdb for all invocations of a function?

我有第三部分库函数调用分散在我的可执行文件的很多地方。 我的可执行文件是使用调试符号构建的,但第三方库没有调试符号,因此我不能在函数上放置断点。 我想在调用库函数时放置一个断点来检查调用堆栈。 如何在我的可执行文件中的库函数调用的所有调用中设置断点。

我认为唯一的办法是:

  • 在你的代码中找到这个函数的任何调用;
  • 在该行中创建一个断点;
  • 运行调试器并停在那里;
  • 写入gdb nexti以获取第一个函数指令;
  • 得到当前的eip,它将指向该函数的开头;
  • 在eip指向的地址创建一个新的断点;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM