addr2line 地址转换分析native crash

addr2line 地址转换分析native crash

addr2line -C -f -e ${SOPATH} ${Address}

-C -f  			//打印错误行数所在的函数名称
-e    	   		//打印错误地址的对应路径及行数
${SOPATH}  		//so库路径 
${Address}		//需要转换的堆栈错误信息地址,可以添加多个,但是中间要用空格隔开

实例1

例如:

     Fatal signal 7 (SIGBUS), code 2, fault addr 0xb23bd4aa in tid 3388 (Binder:3376_2)

 pid: 3376, tid: 3388, name: Binder:3376_2  >>> com.android.defcontainer <<<
 signal 7 (SIGBUS), code 2 (BUS_ADRERR), fault addr 0xb23bd4aa
 r0 b23d1076  r1 02014b50  r2 b23d1048  r3 00000000
 r4 00000000  r5 000001fc  r6 ae95ba80  r7 00000080
 r8 fffeffea  r9 00000000  sl ae99f780  fp b23bd4aa
 ip ae99f788  sp 9f3a4eb8  lr 0000ffff  pc b4be187e  cpsr 800b0030
 
 backtrace:
 #00 pc 0002487e  /system/lib/libandroidfw.so
 #01 pc 00021429  /system/lib/libandroidfw.so (_ZN7android9ZipFileRO4openEPKc+20)

执行

addr2line -fCe libandroidfw.so 0002487e 00021429
出现:
    ParseZipArchive(ZipArchive*)
	/proc/self/cwd/system/core/libziparchive/zip_archive.cc:399
	android::ZipFileRO::open(char const*)
	/proc/self/cwd/frameworks/base/libs/androidfw/ZipFileRO.cpp:68 (discriminator 1)

猜你喜欢

转载自blog.csdn.net/LHshooter/article/details/107580242