c/c++语言开发共享将libc回溯转换为源行号

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

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

关于追踪这个错误的任何其他建议也将受到赞赏。 我对gdb的基础知识非常熟悉。

*** 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  

谢谢…

    如果你在gdb并且你有调试符号,这很容易。 使用list

     (gdb) list *0x804d5ce 

    这应该为您提供代码行,并向您显示源代码是否能够找到源文件。

    没有gdb你可以尝试使用addr2line

    需要了解更多c/c++开发分享将libc回溯转换为源行号,也可以关注C/ C++技术分享栏目—计算机技术网(www.ctvol.com)!

     $ addr2line -e finite_element 0x804d5ce 

      以上就是c/c++开发分享将libc回溯转换为源行号相关内容,想了解更多C/C++开发(异常处理)及C/C++游戏开发关注计算机技术网(www.ctvol.com)!)。

      本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

      ctvol管理联系方式QQ:251552304

      本文章地址:https://www.ctvol.com/c-cdevelopment/979986.html

      (0)
      上一篇 2021年12月13日
      下一篇 2021年12月13日

      精彩推荐