如何解决如何获取gdb调用堆栈跟踪?
我有一个核心转储文件和一个存储调试信息的文件,我可以在不使用可执行文件的情况下使用gdb来获取具有函数和行名称的调用堆栈吗?
解决方法
我可以在不使用可执行文件的情况下使用gdb来获取具有函数和行名称的调用堆栈吗?
至少在Linux / x86_64上,答案是否定的:objcopy --only-keep-debug
之后保存的信息还不够;您还需要可执行文件。
之所以会发生这种情况(至少部分是因为)debug_file
没有.eh_frame
部分,这对于在x86_64
上展开是必不可少的。
如果您要自行调试核心转储,则没有理由创建debug_file
-仅保留原始可执行文件以及完整的调试信息以进行调试(您仍然可以将较小的剥离文件发送到执行机)。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。