本文主要是介绍Ubuntu和Mac使用gdbserver远程调试android源码(五),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
一、gdbserver在android上远程调试进程
0.关闭Enforcing
# adb shell setenforce 01.拷贝gdb和gdbserver文件
<1>PC端为Client (Ubuntu Or Mac)
【1】gdb client for Ubuntu路径位置prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.9/bin/arm-linux-androideabi-gdb
【2】gdb client for Mac路径位置prebuilts/gcc/darwin-x86/arm/arm-linux-androideabi-4.9/bin/arm-linux-androideabi-gdb<2>Android arm平台gdbserver路径位置prebuilts/misc/android-arm/gdbserver
<3>out/target/product/msm8996/symbols/system/bin/mediaserver将带symbols的mediaserver拷贝出来,push到Board上3.gdb与gdbserver远程调试步骤PC ip:192.168.2.2Board ip:192.168.2.3<1>在Board上,把gdbserver push到Board上# adb push gdbserver /system/bin# adb shell ps | grep mediaserver# adb shell gdbserver 192.168.2.2:1234 --attach 755 注意:gdbserver监听的是PC的ip和1234端口,attach mediaserver进程号<2>在PC上# gdb (gdb) target remote 192.168.2.3:1234注意:这时候gdb连上PC的ip和端口,开始debug.
二、gdb在android上远程调试so文件把out/target/product/xxx/symbols/system/lib/hw/audio.so拷贝到被子上# adb push audio.so system/lib/hw1.在Board上# adb shell# gdbserver 10.100.27.2:1234 ./audio.so2.在PC上# gdb audio.so# target remote 192.168.2.3:1234# b main# c# l# bt
这篇关于Ubuntu和Mac使用gdbserver远程调试android源码(五)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!