摘要:
下文讲述Linux中addr2line的功能说明,如下所示;
addr2line命令功能:
用于将地址翻译成文件名和行号
如:
给一个可执行文件中的地址
或一个可重定位对象中的偏移部分的地址
可使用此命令找出与之相关的文件名和行号
addr2line命令的语法格式:
addr2line [参数] [地址]
-----常用参数说明------
-a:在函数名、文件和行号信息之前,显示地址,以十六进制形式
-b:指定目标文件的格式为bfdname
-e:指定需要转换地址的可执行文件名
-j:给出的地址代表指定section的偏移,而非绝对地址
-C:将低级别的符号名解码为用户级别的名字
-f:在显示文件名、行号输出信息的同时显示函数名信息
-p:使得该函数的输出信息更加人性化:每一个地址的信息占一行
例:
addr2line命令的示例分享
----使用-f和-e参数,在显示文件名、行号输出信息的同时显示函数名信息
[root@maomao365 ~]# addr2line -f -e usr/local/tmp/testMain.so
---使用-a参数,在函数名、文件和行号信息之前,显示地址,以十六进制形式
[root@maomao365 ~]# addr2line -a maomaoMain
---使用addr2line的一些参数来定位代码
[root@maomao365 ~]# addr2line 0x00000000008002e8 -e maomaoMain -f -C -s