使用addr2line分析crash问题

addr2line分析crash问题

addr2line功能

addr2line可以通过解析地址来定位异常发生在哪个文件,哪个函数,哪一行;不过只对编译时带-g参数的进程或者库文件有效,因此想使用addr2line定义进程发生crash时的位置,需要在编译时带上-g参数编译。

addr2line使用

1.堆栈日志打印,在hilogs里搜索关键字“backtrace”
2.提取对应进程,一般“libc.so”为系统库,可不关注,继续向下查看如wpa_supplicnat,找到对应进程
//有些进程添加了编译信息(库的大小会大一些),如android“/symbols/”
3.提取错误地址,重点看 “pc” 后面的十六进制数
使用addr2line -e “16进制地址值” “进程名称” 解析错误

猜你喜欢

转载自blog.csdn.net/htt789/article/details/128891231