查看: 3278|回复: 0

SOM-TL138F基于GDB和GDBServer的远程调试方法

[复制链接]
发表于 2019-8-12 15:11:24 | 显示全部楼层 |阅读模式
1 前言
1
开发板型号
是否支持本实验
TL437x-EVM
支持
TL437x-EasyEVM
支持
TL437x-IDK
支持
TL437xF-EVM
支持
操作环境:
Ø Ubuntu 14.04.3 64bit
GDBServer远程调试是应用程序在开发板上运行,然后在PC上对开发板上应用程序进行调试,PC运行GDB,开发板运行GDBServer。在应用程序调试的时候,PCGDB向开发板上的GDBServer发出命令,而开发板上的GDBServer就会向应用程序发出信号使应用程序停下来或者完成其他一些工作。
2 开发板安装GDBServer
一般情况下,开发板均已安装GDBServer,位于开发板”/usr/bin”目录下。可以在开发板输入”ls /usr/bin/gdbserver”检查现象类似如下图,则说明开发板已安装GDBServer
图片1.jpg
如果开发板还没安装GDBServer,可在对应开发板的SDK安装目录中找到GDBServer可执行程序。
AM437x平台V01.00.00.03版本Linux Processor-SDK开发包,GDBServer可执行程序位于SDK安装目录的如下路径:
linux-devkit/sysroots/cortexa9t2hf-vfp-neon-linux-gnueabi/usr/bin/gdbserver
AM437x平台V03.03.00.04版本Linux Processor-SDK开发包,GDBServer可执行程序位于SDK安装目录的如下路径:
linux-devkit/sysroots/armv7ahf-neon-linux-gnueabi/usr/bin/gdbserver
将其拷贝到开发板文件系统"/usr/bin"目录即可。
3 新建测试程序
Ubuntu上新建测试程序test.c用于演示GDB调试,输入如下代码:
#include
int main() {
    int a = 1;
    float b = 2.0;
    char s[16] = "tronlong";
    int hoge_a = a*2;
    float hoge_b = b*2;
    printf("s is :%s\n", s);
    printf("hoge_a is : %d\n", hoge_a);
    printf("hoge_b is : %f\n", hoge_b);
    return 0;
}
图片2.jpg
执行如下命令编译程序,使用”-g”参数进行GDB编译:
Host#        arm-linux-gnueabihf-gcc test.c -o test -g  
图片3.jpg
将编译后可执行程序test拷贝到开发板任意路径下


更多帮助
销售邮箱:www.tronlong.com
技术论坛:www.51ele.net
线上商城:https://tronlong.taobao.com

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关于我们  -  服务条款  -  使用指南  -  站点地图  -  友情链接  -  联系我们
电子工程网 © 版权所有   京ICP备16069177号 | 京公网安备11010502021702
快速回复 返回顶部 返回列表