ndk工具使用之arm-eabi-addr2line

[plain]
 
$ arm-eabi-addr2line.exe –help
Usage: arm-eabi-addr2line [option(s)] [addr(s)]
 Convert addresses into line number/file name pairs.
 If no addresses are specified on the command line, they will be read from stdin
 The options are:
  @<file>                Read options from <file>
  -b –target=<bfdname>  Set the binary file format
  -e –exe=<executable>  Set the input file name (default is a.out)
  -i –inlines           Unwind inlined functions
  -j –section=<name>    Read section-relative offsets instead of addresses
  -s –basenames         Strip directory names
  -f –functions         Show function names
  -C –demangle[=style]  Demangle function names
  -h –help              Display this information
  -v –version           Display the program's version

arm-eabi-addr2line: supported targets: elf32-littlearm elf32-bigarm elf32-little elf32-big srec symbolsrec tekhex binary ihex
Report bugs to <https://www.sourceware.org/bugzilla/>

作用:
so絕對地址到代碼行數的計算,以及相關代碼行數信息的獲取
註意點:
1.絕對地址=so加載的起始地址 – 當前出錯代碼地址(如pc,或lr等)
2.so必須是要附號信息的
常用實例:
[java] 
arm-eabi-addr2line.exe -C -f -e ./xxx.so 0x186759 

 作者:SCHOLAR_II

發佈留言