【问题标题】:how to use addr2line in commandline如何在命令行中使用 addr2line
【发布时间】:2011-05-16 10:03:35
【问题描述】:

如何使用addr2line? 我有一个程序可以回溯崩溃前它访问的最后 10 个地址。但如果我使用这些地址添加到 addr2line 之类的

addr2line -e test [address]

它只是给了我

??:0

有没有一种特殊的方式来编译使用 addr2line 就像我们使用 ggdb 来使用 gdb 一样?

【问题讨论】:

    标签: c++ linux


    【解决方案1】:

    您需要将一些调试信息编译到您的可执行文件中。例如

    $ gcc t.c                         # debug information not requested
    $ gdb ./a.out 
    ...
    (gdb) break main
    Breakpoint 1 at 0x400588
    (gdb) q
    $ addr2line -e a.out 0x400588
    ??:0                              # no information returned
    
    $ gcc -g t.c                      # default debug information requested with -g
    $ addr2line -e a.out 0x400588    
    t.c:4                             # line information returnedd
    $ 
    

    【讨论】:

      猜你喜欢
      • 2011-11-30
      • 2019-09-26
      • 2011-07-15
      • 2012-07-07
      • 1970-01-01
      • 2019-05-30
      • 1970-01-01
      • 1970-01-01
      • 2019-12-24
      相关资源
      最近更新 更多