linux – 使用gdb / gdbserver远程调试共享库
发布时间:2020-12-14 00:44:10 所属栏目:Linux 来源:网络整理
导读:我的问题是使用gdb / gdbserver远程调试嵌入式arm处理器上的应用程序. 我可以调试应用程序本身,但应用程序动态链接到实现内部通信协议的共享库.我希望能够在共享库函数中设置断点,以便尝试找出一些设备发现问题. 我已经确保库是用调试符号编译的并且由主机端
我的问题是使用gdb / gdbserver远程调试嵌入式arm处理器上的应用程序.
我可以调试应用程序本身,但应用程序动态链接到实现内部通信协议的共享库.我希望能够在共享库函数中设置断点,以便尝试找出一些设备发现问题. 我已经确保库是用调试符号编译的并且由主机端的gdb加载,我可以在库中列出函数甚至设置断点但是当我尝试运行应用程序时,我收到一条错误消息的效果: 无法插入断点X. 其中X是gdb中的断点号,是一个很小的地址,有效. 解决方法
猜测:你在不正确的地址将共享库加载到主机GDB中.
不要将其显式加载到GDB中,而是使用“set stop-on-solib-event on”,等待库加载(信息共享将告诉您当前加载的库列表),然后设置断点. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |