Android native 静态库 gdb调试 gdbserver

本文详细介绍如何使用Android NDK进行native层代码调试,包括选择合适的gdbserver和gdb版本,配置远程调试环境,以及设置gdb连接参数等关键步骤。

最近开发一个Android native 的so和可执行文件;

关于再gdbserver 调试的记录

1. push ndk的gdbserver

我使用的是ndk-14 不够这个包里面已经没有gdbserver 了 。。。

所以我找到ndk-10 版本的有gdbserver路径:

ndk-r10/android-ndk-r10d/prebuilt/android-arm/gdbserver 

然后我用ndk-10的gdb

ndk-r10/android-ndk-r10d/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/arm-linux-androideabi-gdb

tips:

使用的gdb工具一定要和push的gdbserver 对应是一个ndk版本的(不能使用调试机的自带的gdbserver)

2. 使用上面的两个工具开始调试

  • push调试的可执行文件
adb root
adb push obj/local/armeabi-v7a/cwtest
  • 再设备端开一个 端口
adb shell
adb root
gdbserver :9999 /data/cwtest 

这样就开启了一个gdb连接

  • pc端连接这个端口
adb forward tcp:9999 tcp:9999
  • 用gdb 工具连接调试

设置源码搜索位置:

 set dir ~/git/new_tsl/test_stl/

设置可执行文件路径

file ~/git/new_tsl/test_stl/obj/local/armeabi-v7a

设置libs的搜索路径

set solib-search-path  ~/git/new_tsl/test_stl/libs/armeabi-v7a/

设置代码显示路径:

directory  ~/git/new_tsl/test_stl/src/

开始连接设备的gdbserver

target remote :9999

会再设备端显示

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

月上柳青

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值