Android手机gdb调试

众所周知,linux上gdb是一个功能非常非常强大的工具,纵然使用多年,回头一看,仍然觉得还是掌握了很小很小一部分的代码。android是基于linux的平台,所以google在android上开发了很多类linux的调试工具,如arm-linux-androideabi-gcc-ar, arm-linux-androideabi-gcc, arm-linux-androideabi-g++ 等等,如果掌握了这些工具,就像外科医生可以做出出色的手术,我们可以定位android平台上的各种疑难杂症。

Android对于C/C++代码的调试方式一般选用gdb+gdbserver的方式,其中gdbserver运行在手机端,gdb运行在主机上(如linux)。

不多说,上步骤,手机以android 9.0为例, 主机以ubuntu 14.04为例。
以调试mediaserver为例;
由于mediaserver是32位的二进制程序,我们需要用32位的gdbserver来调试;
如果调试64位的二进制程序 ,需要用到64位的gdbserver64来调试。

1、手机端准备

1.1 查看gdbserver是否存在

首先查看手机端,system/bin 目录下是否存在 gdbserver二进制,
一般userdebug版本的手机都会有这个二进制,
如果没有,直接在代码的prebuilts/misc/android-arm/gdbserver目录中,找到gdbserver,push到手机中。

  • 3
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值