1. 问题背景
上层应用在问题定位的过程中,现有手段只能有有限的log打印,通常情况下很难定位问题。如果想在应用程序执行的过程中查看任意调用关系或者数据就必须重新编译代码,这样调试费时费力。使用gdb调试可以高效的对应用进行分析,并且能实时的改变应用程序的执行路径,强大的调试功能能够让我们更好的去分析问题。
2 环境搭建
- 使用高通的交叉编译工具链编译、生成GDB工具将GDB工具导入到高通平台模块中
- 执行客户的应用程序,并生成core dump文件
- 将源代码push到手机中
- 使用GDB工具进行调试
注意:当前X12项目没有添加gdb,为了调试方便gdb的编译我们将在x55项目中进行生成。添加gdb请参考x55配置或者根据以下链接Preparing Yocto Development Environment for Debugging适配。
3 操作步骤
- 生成模块端可用的GDB工具
- 进入如下目录
sdx12-le-1-0/apps_proc/poky - 执行以下命令:
source build/conf/set_bb_env