DDD调试opencore/stagefright(转载更新版)
2010-12-02 16:08
183 查看
参考:http://blog.chinaunix.net/u2/61880/showart_2393482.html
Google为Android应用开发提供了eclipse加插件作为开发工具,基于eclipse可以方便调试apk,而对于底层开发人员(比如opencore开发)没有提供类似直观的开发工具及调试手段。本文旨在介绍一种基于ddd+gdbserver的调试方法,用于类似opencore的C层面的程序调试。
具体步骤如下:
1、开一个终端,然后输入:adb shell
ps查看mediaserver进程号
gdbserver :4800 --attach pid (pid为具体进程号)
注:在本系统中端口为4800开启一个调试进程,进程号为实际的pid值。
2、再开一个终端,输入:adb forward tcp:4800 tcp:4800
cd /myandroid/android2.2
ddd –debugger arm-eabi-gdb out/target/product/generic/symbols/system/bin/mediaserver
然后会自动载入ddd程序
在其console窗口执行如下两个命令,事实上会从下面指定目录加载so库
set solib-absolute-prefix /myandroid/android2.2/out/target/product/generic/symbols
set solib-search-path /myandroid/android2.2/out/target/product/generic/symbols/system/lib
接下来连接server端,执行命令:target remote :4800
执行完该命令后要略等一下,此时gdb会加载所需的so库
此时可以在ddd源码浏览窗口打断点,或者在console窗口通过命令设置断点,
比如:b createPlayer,
然后执行命令c
至此DDD方面完成,接下来进入模拟器,点击播放视频,即可进入断点
---------------------------------------------------------------------------------------------------
步骤基本上参照以上描述。
下面贴上几张图(可按照图进行操作):
Google为Android应用开发提供了eclipse加插件作为开发工具,基于eclipse可以方便调试apk,而对于底层开发人员(比如opencore开发)没有提供类似直观的开发工具及调试手段。本文旨在介绍一种基于ddd+gdbserver的调试方法,用于类似opencore的C层面的程序调试。
具体步骤如下:
1、开一个终端,然后输入:adb shell
ps查看mediaserver进程号
gdbserver :4800 --attach pid (pid为具体进程号)
注:在本系统中端口为4800开启一个调试进程,进程号为实际的pid值。
2、再开一个终端,输入:adb forward tcp:4800 tcp:4800
cd /myandroid/android2.2
ddd –debugger arm-eabi-gdb out/target/product/generic/symbols/system/bin/mediaserver
然后会自动载入ddd程序
在其console窗口执行如下两个命令,事实上会从下面指定目录加载so库
set solib-absolute-prefix /myandroid/android2.2/out/target/product/generic/symbols
set solib-search-path /myandroid/android2.2/out/target/product/generic/symbols/system/lib
接下来连接server端,执行命令:target remote :4800
执行完该命令后要略等一下,此时gdb会加载所需的so库
此时可以在ddd源码浏览窗口打断点,或者在console窗口通过命令设置断点,
比如:b createPlayer,
然后执行命令c
至此DDD方面完成,接下来进入模拟器,点击播放视频,即可进入断点
---------------------------------------------------------------------------------------------------
步骤基本上参照以上描述。
下面贴上几张图(可按照图进行操作):
相关文章推荐
- DDD调试opencore/stagefright
- DDD调试opencore/stagefright
- DDD调试opencore/stagefright
- DDD调试opencore/stagefright
- DDD调试opencore/stagefright
- stagefright + omx小结(转载)
- [转载]RTSP in Stagefright
- [转载]Android Studio调试功能使用总结
- android mediaplayer + stagefright 框架图解
- 项目调试时候,出现其中用到的一个组件“访问被拒绝”的解决方法。(转载)
- (转载)虚幻引擎3--UE3 之调试
- ddd调试像ollydbg一样显示堆栈内容
- vim+gdb+ddd+xxgdb精彩的程序调试
- <转载>linux gcc编译器中使用gdb单步调试程序,程序不是顺序执行的。
- An overview of Stagefright player
- Firebug+Firefox 调试方法初探(转载)
- codeblocks调试(转载)
- 【转载】Android Studio NDK 开发与调试(生成 .so 文件)
- 【转载】配置Editplus的PHP调试环境
- 用 Firebug 动态调试和优化应用程序(转载)