安卓下gdb远程调试

1.首先查看在安卓上是否安装gdbserver,查看命令:gdbserver --version

安卓下gdb远程调试_第1张图片

我这个安卓板子上已经安装,直接用就可以。(没有的百度就可以,挺多的)

2.在PC机上安装编译arm-linux-gdb(先查看下版本gdb --version),查看什么架构的gdb

安卓下gdb远程调试_第2张图片

目前的gdb是X86架构的gdb,所以不能用于arm架构的gdb.需要下载arm-linux-gdb进行编译。

参考链接:https://www.cnblogs.com/gjfhopeful/p/3902975.html

3.启动gdbserver 命令

进入adb shell,输入gdbserver :(端口号) ./(程序路径),例如端口号1234 程序路径/data/vehicle :gdbserver :1234 ./data/vehicle

安卓下gdb远程调试_第3张图片

安卓端的gdbserver开始监听,剩下的就是在PC端运行arm-linux-gdb进行连接。(开启gdbserver另一种方法:gdbserver :1234 --attch (进程的id号),例如:gerserver :1234 --attach 1798)

4.PC端运行arm-linux-gdb

首先输入:adb forward tcp:1234 tcp:1234   端口映射,将pc上的端口映射到手机的端口

然后运行root@ubuntu:/usr/local/armGdb/arm-gdb/bin# ./arm-linux-gdb (安装后的arm-linux-gdb)

然后在gdb模式下输入:

target remote :1234   #连接本地的:1234端口,此端口已经和手机的1234端口做好映射

安卓下gdb远程调试_第4张图片

现在就可以进行调试啦,输入:list 查看代码

安卓下gdb远程调试_第5张图片

你可能感兴趣的:(GDB)