歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> 利用ssh下載symbols並通過addr2line定位so庫錯誤位置的用法

利用ssh下載symbols並通過addr2line定位so庫錯誤位置的用法

日期:2017/2/28 16:13:25   编辑:Linux教程

1.通過ssh連接服務器,其中develop為用戶名,後面ip為服務器ip地址:
ssh -l develop 192.168.1.12

2.在連接過程中提示沒有授權之類的信息,問是否繼續,輸入yes繼續;然後在提示輸入密碼的地方,輸入密碼即可連接上

3.用scp拷貝服務器上的文件夾到本機上,需要先退出ssh登錄的遠程服務器,執行以下命令進行拷貝:
scp -r [email protected]:/home/project_name/out/target/product/product_name/symbols /home/ameyume/projects/symbols/test
-r表示遞歸文件夾拷貝
[email protected]:/home/project_name/out/target/product/product_name/symbols 為要拷貝的遠程服務器目錄
/home/ameyume/projects/symbols/test 要拷貝到的本地主機目錄

4.使用arm-eabi-addr2line工具定位native代碼的錯誤位置

I/DEBUG ( 79): #00 pc 0002084c /system/lib/libc.so
I/DEBUG ( 79): #01 lr a970a079 /system/lib/libaudio.so


~/projects/symbols/test/symbols$ arm-eabi-addr2line -e ./system/lib/libc.so 0002084c
/home/project_name/bionic/libc/string/strchr.c:37

輸出錯誤代碼行數:37

Copyright © Linux教程網 All Rights Reserved