JZ2440GDB调试应用程序

PC机通过dgb来发送命令给gdbserver

ARM板需要gdbserver,给他的子进程发送命令如停止信号

gdb读变量a
app文件带有调试信息

elipes可以当做GUI前台,dgb运行于pc dgbserver运行于arm板

target表示我们编译出来用于什么
./configure–target=arm-linux --disable-werror

make

book@www.100ask.org:/work/tools/gdb-6.7$ mkdir tmp
book@www.100ask.org:/work/tools/gdb-6.7$ make install prefix=$PWD/tmp

book@www.100ask.org:/work/tools/gdb-6.7/tmp/bin$ sudo cp arm-linux-gdb /bin/

book@www.100ask.org:/work/tools/gdb-6.7/tmp/bin$ sudo chmod +x /bin/arm-linux-gdb

编译gdbserver
host表示我们编译出来在哪里执行
book@www.100ask.org:/work/tools/gdb-6.7/gdb/gdbserver$ ./configure --host=arm-linux

make
在这里插入图片描述
在交叉编译器下搜索这个宏发现室友的不过是在linux目录下
在这里插入图片描述

vi linux-arm-low.c,加入这一行
在这里插入图片描述

把gdbserver拷贝到文件系统的bin目录下
cp gdbserver /work/nfs_root

编写一个调试程序:

在这里插入图片描述

调试:
gdbserver 加上板子的ip地址:端口号随便给 运行测试的程序
在这里插入图片描述
在这里插入图片描述
main函数打断点
在这里插入图片描述

开发板输入ulimit -c
如果没有错误的话输出结果是0
我们设为不限制:
ulimit -c unlimited
在这里插入图片描述
生成core文件,把core文件 考回虚拟机,
在pc上执行下面红色的命令在这里插入图片描述
gdb输入bt命令可以看到程序在C函数出错
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
si 源码一行一行的执行

main的21行打断电
在这里插入图片描述
c继续运行,l列出源代码
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值