您的位置:首页 > 移动开发 > Android开发

使用GDB 单步调试Android本地代码

2015-01-07 10:16 357 查看
#cmd     表明该命令运行于android设备控制台上
$cmd     表明该命令运行于Linux PC控制台上
(gdb)cmd 表明该命令运行于GDB控制台上


1. 调试已运行的rild

#ps | grep rild


得到rild的进程rild-pid
#gdbserver :5039 --attach rild-pid


或者调试新的rild进程
#gdbserver :5039 rild


2. 用ADB设置转发端口
$adb forward tcp:5039 tcp:5039


3. 在android的platform目录下
$./ prebuilt/gcc/linux—x86/x86/。。。/bin/***-gdb


4. 设置符号表
(gdb)set solib-absolute-prefix /home/loginname/android-platform/out/target/product/saarbmg1/symbols
(gdb)set solib-search-path /home/loginname/android-platform/out/target/product/saarbmg1/symbols/system/lib


5. 与GDB server连接
(gdb)target remote :5039
(gdb)shared


后面就可以进行调试了

下面是常用的gdb调试命令
(gdb)help [cmd]                            显示命令cmd的帮助
(gdb)bt                                    显示调用堆栈
(gdb)next|n                                执行下一代码
(gdb)step|s                                执行到下一行代码
(gdb)run|r                                 继续运行
(gdb)jump lineno                           执行到指定行为止
(gdb)break|b lineno|function if condifion  设置断点
(gdb)directory|dir dir1:dir2               指定源文件搜索路径
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: