参考文章:Debug Native c/c++ Application for Android(Step by Step)
和Google Android Debugging Utilities
首先,我们需要一个含有调试信息的exe文件,一般这个文件存在于out/target/product/generic/obj/EXECUTABLES/yourexefile_intermediates/LINKED/libomstts目录下,这里以我们前面文章中生成的helloworld为例。
1.下载Android Debugging Utilities
2.启动Android Emulator模拟器
$ emulator @1.5_R2
3.把gdb和调试文件以及源代码放到模拟器上
$ adb push gdb /data/bin
$ adb helloworld /data/bin
以helloworld为例,源代码要放在/data/bin/development/hello目录下。
有的文章说将以上文件放在/system/bin目录下,但后果是一旦关掉模拟器,这些的文件就消失了,下次又要重传~所以推荐放在/data/bin目录下。
4.启动shell
$adb shell
如果提示文件系统不可写的话,执行adb remount。
5.因为Android文件系统没有/bin/sh, 所以我们建立一个
# mkdir /bin
#cp bash /bin/sh
或者
#export SHELL=/system/bin/sh
6.进入/data/bin目录,运行gdb,可以开始调试程序了
#cd /data/bin
#./gdb helloworld