UNIX 目标文件初探(二)

除了所有这些段之外,编译器可以将调试信息放入到 目标文件中,并且还可以显示这些信息。输入下面的命令,仔细分析编译器的输出(假设您扮演了调试程序的角色):

readelf --debug-dump a.out | less


  这个命令生成的输出如清单 5所示。调试工具,如GDB,可以读取这些调试信息,并且当程序在调试器中运行的同时,您可以使用该工具显示更具描述性的标记,而不是对代码进行反汇编时的原始地址值。

  清单 5. 该程序中的调试信息The section.debug_aranges contains:
 Length:          28
 Version:         2
 Offset into .debug_info: 0
 Pointer Size:       4
 Segment Size:       0
  Address Length
  080482c0 34
 Length:          52
 Version:         2
 Offset into .debug_info: 10b
 Pointer Size:       4
 Segment Size:       0
  Address Length
  08048308 4
  08048458 18
  08048278 11
  080482e4 36
 Length:          44
 Version:         2
 Offset into .debug_info: 19b
 Pointer Size:       4
 Segment Size:       0
  Address Length
  08048308 4
  0804846f 6
  0804828d 2
Contents of the .debug_pubnames section:
 Length:               33
 Version:               2
 Offset into .debug_info section:   122
 Size of area in .debug_…………………………………………………………………………

来自:http://www.verydemo.com/demo_c170_i1829.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值