Android gdb调试

1. AndroidManifest.xml 中设置Android程序为debuggable

   用Android tool将Android工程转换为native code(C/C++)工程 (仅需要新的.project文件即可)

2. 配置Debug运行项

Android工程上点右键Debug As-->Debug Configurations, 弹出的窗口中选C/C++ Application,双击创建一个Debug配置项, 取名Andoird_debug


上传android工程libs/armeabi-v7a目录中的gdbserver到手机

adb push gdbserver /system/bin/

adb pull /system/bin/app_process


Main标签页的设置:

          C/C++ Application的路径: 设置为从手机上下载的app_process路径

          Project: 设置为该Android工程

          Build configuration: 设置为Use Active,    及Disable auto build

          点击窗口最下面"Select other..." 选Standard Create Process Launcher


Debugger标签页的设置:

          Debugger:                选gdbserver

          

Debugger标签中的Main子标签页:                

gdb debugger:

设置为  android-ndk-r8e\toolchains\arm-linux-androideabi-4.7\prebuilt\windows-x86_64\bin\arm-linux-androideabi-gdb.exe

gdb command file:

设置为  workspace_tv\test\libs\armeabi\gdb.setup

GDB command set:

设置为  Standard


gdb.setup中的设置
  set solib-search-path
directory <代码所在路径, 多个路径以空格分隔>


Debugger标签中的Connection子标签页:

Type:          选TCP

HostIP:      设为 localhost

Port:           5039


3. 开始调试, 先设置C代码断点

a. debug方式启动android程序

b. adb shell gdbserver :5039 --attach

c. adb forward tcp:5039 tcp:5039

d. 运行上面第2步配置的Debug配置项"Andoird_debug"


4. 现在可以开始在eclipse中调试你的C++程序了

你可能感兴趣的:(Android)