【问题标题】:How do I best determine if a binary contains STAB or DWARF debug information?如何最好地确定二进制文件是否包含 STAB 或 DWARF 调试信息?
【发布时间】:2015-03-27 09:50:58
【问题描述】:

对于 ELF,两种附带的调试格式非常受其他人欢迎,即STAB and DWARF。我想要一种简单的方法来确定给定的二进制文件是否包含一种或另一种形式的调试信息,最好不必检查部分名称(.stab 等)。

有什么好的方法可以做到这一点?

【问题讨论】:

    标签: elf dwarf


    【解决方案1】:

    对于 ELF,两种附带的调试格式非常流行

    在过去的 10 年中,ELF 平台上的任何当前编译器都默认未使用 STABS 格式。它绝对不是“非常受欢迎”。

    讲述方式:

    readelf -WS ./a.out | egrep '\.(stab |debug)'
    

    如果二进制文件有STABS,您将看到.stab 部分。如果您有DWARF,您将看到.debug_info.debug_line 等。如果您根本没有调试信息,您将什么也看不到。

    最好不必检查部分名称

    不查看部分就无法完成:是这些部分的存在与否使二进制文件包含或不包含调试信息。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-08-26
      • 1970-01-01
      • 2014-05-15
      • 2021-11-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多