首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >将libc回溯转换为源码行号

将libc回溯转换为源码行号
EN

Stack Overflow用户
提问于 2012-07-26 00:10:35
回答 1查看 7.5K关注 0票数 20

我有一个结合了C和Fortran源代码的MPI应用程序。它偶尔会因为内存相关的bug而崩溃,但我很难找到这个bug (它在别人的代码中,目前我还不是很熟悉)。我还不能用gdb捕获它,但有时会输出glibc回溯,如下所示。

错误可能接近"(main_main_+0x3bca)0x804d5ce“(但由于内存错误,我知道情况可能并非如此)。我的问题是,有谁知道如何将+0x3bca或0x804d5ce转换为特定的代码行?

任何其他关于追踪bug的建议也将不胜感激。我非常熟悉gdb的基础知识。

代码语言:javascript
复制
*** glibc detected *** /home/.../src/finite_element: munmap_chunk(): invalid pointer: 0x09d83018 ***
======= Backtrace: =========
/lib/i386-linux-gnu/libc.so.6(+0x73e42)[0xb7409e42]
/lib/i386-linux-gnu/libc.so.6(+0x74525)[0xb740a525]
/home/.../src/finite_element(main_main_+0x3bca)[0x804d5ce]
/home/.../src/finite_element[0x804e195]
/home/.../src/finite_element(main+0x34)[0x804e1e8]
/lib/i386-linux-gnu/libc.so.6(__libc_start_main+0xf3)[0xb73af4d3]
/home/davepc/finite-element/src/finite_element[0x8049971]
======= Memory map: ========
08048000-08056000 r-xp 00000000 08:05 1346306    /home/.../src/finite_element
08056000-08057000 r--p 0000d000 08:05 1346306    /home/.../src/finite_element
08057000-08058000 rw-p 0000e000 08:05 1346306    /home/.../src/finite_element
09d1b000-09d8f000 rw-p 00000000 00:00 0          [heap]
b2999000-b699b000 rw-s 00000000 08:03 15855      /tmp/openmpi-sessions-_0/37612/1/shared_mem_pool.babel
b699b000-b6b1d000 rw-p 00000000 00:00 0 
b6b31000-b6b3d000 r-xp 00000000 08:03 407798     /usr/lib/openmpi/lib/openmpi/mca_osc_rdma.so
b6b3d000-b6b3e000 r--p 0000b000 08:03 407798     /usr/lib/openmpi/lib/openmpi/mca_osc_rdma.so
b6b3e000-b6b3f000 rw-p 0000c000 08:03 407798     /usr/lib/openmpi/lib/openmpi/mca_osc_rdma.so
<snip>

谢谢..。

EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11654055

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档