查看已去除debug调试符号的Core文件示例

背景环境说明

一般从现场医院copy的子系统文件都是去除调试符号的文件,core调试时只能看到问号

调试操作

a)	Svn up –r xxx 恢复Components目录至现场版本

b)	Cd Components/Axial 进入子系统目录,然后运行 make release 命令

c)	将 Components/Axial/Build/cortexA8/Appl/Axial.debug(就是Axial相应版本的调试符号文件) 与 现场copy回来的Axial 、 core-Axial文件放在一起

d)	运行 export SDK_PATH=/xxx/xxx/linux/sdk-am335x-evm-05.06.00.00/linux-devkit

e)	运行 ./xxx/xxx/sdk-am335x-evm-05.06.00.00/linux-devkit/bin/arm-arago-linux-gnueabi-gdb -s Axial.debug -e Axial -c core-Axial

注解:make release时最终产生如下编译打印信息
../../../../../linux/sdk-am335x-evm-05.06.00.00/linux-devkit/bin/arm-arago-linux-gnueabi-objcopy --only-keep-debug Axial.full Axial.debug
../../../../../linux/sdk-am335x-evm-05.06.00.00/linux-devkit/bin/arm-arago-linux-gnueabi-objcopy --strip-all Axial.full Axial
Objcopy – copy and translate object files
--strip-debug -- do not copy debugging symbols or sections from the source file
--only-keep-debug – strip a file, removing contents of any sections that would not be stripped by strip-debug and leaving the debugging sections intact.

f)	致此应该有相关信息打印,若提示库缺失可设置 set sysroot /xxx/xxx/linux-devkit/lib 或和子系统相关的动态库

g)	打印信息应该可以大体定位错误来源,若要查看奔溃时的相关信息,运行info locals命令即可打印本层所有的变量信息

i)	若要切换堆栈层次(函数调用层次),运行f (x)即可

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值