使用 gdb 我希望记录所有指令及其地址 - 最好在每个指令之前和之后注册值(如果可能) - 但仅限于库内。我正在调试一个 Android 应用程序,并且可以在库中中断和单步执行,但我希望或多或少地自动收集所述库中的指令和寄存器值。我通过 Android 实例上的 gdbserver 和本地计算机上带有远程目标的 gdb 连接到 Android 模拟器上的 gdb。
gdb 可以仅记录特定共享库中的所有指令及其地址吗?
可以,但是这样做会变得极其缓慢。
简单的方法可以做到这一点:您必须使用嵌入式Python并编写脚本来打印您想要的任何数据。