限 时 特 惠: 本站每日持续更新海量各大内部创业教程,一年会员只需98元,全站资源免费下载 点击查看详情
站 长 微 信: muyang-0410

3) 在上一篇用生成的基础上dbserver,需要做一定的改动,用来生成。

3.配置

里需要做一定的配置,用来生成gdb和,步骤如下:

1) 确认 | Build cross gdb for the host 是否选中,这个默认是选中的。

dbserver使用_dbserver使用教程_dbserver

这个的作用是:Build a cross gdb that runs on the host and on the . It ” on the 。

2) 选中下的 ,注意一定得先选中这个,不然第三步无法执行。

dbserver使用教程_dbserver_dbserver使用

3) 选中 | , and ->gdb和

dbserver使用_dbserver使用教程_dbserver

上面的作用是:

This to build and/or the gdb for the .For , the most is to build only ” for the , and use a cross-gdb on the host.

4) 保存dbserver,编译即可。

生成的gdb位于:/home//////host/usr/bin

目录中

生成的位于:

/home///////usr/bin 目录中

5) 将上述直接放到板子的/usr/bin目录里即可,然后登录板子输入,可以看到如下信息,说明板子的已经搭建好了。

dbserver_dbserver使用教程_dbserver使用

4.新建测试程序

1)新建一个测试程序.c

#include int main(){    char s[64] = "Welcome to www.topsemic.com";    int a = 1;    int c = a*2;    int *ptr = NULL;    printf("s is :%s ", s);    printf("c is : %d ", c);    *ptr = 20;    printf("%d ",*ptr);    return 0;}

2)交叉编译

@–:~///$ arm-linux-gcc .c -o -g

注:arm-linux-gcc .c -o -g其中”-g”参数表示进行 GDB 编译。

这个程序放到板子里运行结果如下:

我们用下面的在线调试方法去看看什么原因导致的 fault

5.在线调试

调试前,将板子和PC之间通过网线相连接,步骤如下:

1) 在开发板可执行程序所在的目录下,执行如下命令启动:

命令格式: :

192.168.0.80 为 的 IP 地址, 1234 为连接的端口号

注:需要先将虚拟机的IP配置为固定的192.168.0.80,这个设置方法在《Linux学习系列八:操作网口》中有介绍

dbserver使用_dbserver使用教程_dbserver

dbserver使用教程_dbserver使用_dbserver

2) 在下启动gdb调试,命令格式:

@–:~///$ /home//////host/usr/bin/arm-linux-gdb

3) 在弹出的上述对话框(gdb)后输入以下命令,连接开发板

(gdb) 192.168.0.100:1234

dbserver使用_dbserver_dbserver使用教程

其中192.168.0.100 是开发板的IP地址

4)之后就可输入如下 GDB 调试命令,其他调试命令的详细用法请输入”help 命令名称”查阅。

命令:l,参看代码。

命令:b main,在 main处设置断点。

命令:b 6,在第六行设置断点。

命令:c,继续执行。

命令:n,单步执行。

命令:q,退出gdb。

一直输入 c, 直到程序结束。

单步调试,同时查看板子上打印的信息

可以看到板子程序执行的过程和上加的断点运行的进度一致,另外可以

发现是因为line 10 导致的 fault,这样就定位到了出问题的地方。

注: 可以看到详细的gdb命令用法。

6.结束语

本期相关的资料在 中

限 时 特 惠: 本站每日持续更新海量各大内部创业教程,一年会员只需98元,全站资源免费下载 点击查看详情
站 长 微 信: muyang-0410