我可以调试应用程序本身,但应用程序动态链接到实现内部通信协议的共享库.我希望能够在共享库函数中设置断点,以便尝试找出一些设备发现问题.
我已经确保库是用调试符号编译的并且由主机端的gdb加载,我可以在库中列出函数甚至设置断点但是当我尝试运行应用程序时,我收到一条错误消息的效果:
无法插入断点X.
访问内存地址时出错:输入/输出错误.
其中X是gdb中的断点号,是一个很小的地址,有效.
我在目标和主机上都使用新库,但是通过mount -o从nfs mount挂载目标上的newlib oldlib.
有没有人知道可能出现什么问题?
提前致谢.
不要将其显式加载到GDB中,而是使用“set stop-on-solib-event on”,等待库加载(信息共享将告诉您当前加载的库列表),然后设置断点.
总结以上是内存溢出为你收集整理的linux – 使用gdb / gdbserver远程调试共享库全部内容,希望文章能够帮你解决linux – 使用gdb / gdbserver远程调试共享库所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)