版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、Revision History基于 GDB 和 GDBServer 的远程调试方法 Draft DateRevision No.Description2018/4/12V1.01. 初始版本。 公司官网:销售邮箱:公司总机:020-8998-62801/9技术论坛:技术邮箱:技术热线:020-3893-9734目录1 前言32 开发板安装 GDBServer33 新建测试程序44 运行 GDBServer 和 GDB 进行远程调试5更多帮助9公司官网:www.tr
2、销售邮箱:公司总机:020-8998-62802/9技术论坛:技术邮箱:技术热线:020-3893-97341 前言表 1开发板型号 是否支持本实验 TL8148-EVM支持 TL8148-EasyEVM支持 TL8127-EVM支持 TL8127- EasyEVM支持 操作环境: Ubuntu 12.04.1 32bitGDBServer 远程调试是应用程序在开发板上运行,然后在 PC 上对开发板上的应用程序进行调试,PC 运行 GDB,开发板运行 GDBServer。在应用
3、程序调试的时候,PC 的 GDB向开发板上的 GDBServer 发出命令,而开发板上的 GDBServer 就会向应用程序发出信号,使应用程序停下来或者完成其他一些工作。 2 开发板安装 GDBServer一般情况下,开发板均已安装 GDBServer,位于开发板/usr/bin/目录下。可以在开发板中输入下面命令检查,现象类似如下图,则说明开发板已安装 GDBServer。 Target#ls /usr/bin/gdbserverTarget#gdbserver图 1公司官网:销售邮箱:公司总机:020-8998-62803
4、/9技术论坛:技术邮箱:技术热线:020-3893-9734如果开发板还没安装 GDBServer,可在对应开发板的交叉编译链 CodeSourcery 安装目录中找到 GDBServer 可执行程序。 DM8148DM8127 平台使用 CodeSourcery 交叉编译工具包,GDBServer 可执行程序位于 CodeSourcery 安装目录的如下路径: /CodeSourcery/Sourcery_G+_Lite/arm-none-linux-gnueabi/libc/usr/bin/gdbserver将 gdbserv
5、er 拷贝到开发板文件系统/usr/bin目录即可。 Gdbserver 还需要 libthread_db.so.1 库文件支持,所以把 CodeSourcery 安装目录如下路径: /CodeSourcery/Sourcery_G+_Lite/arm-none-linux-gnueabi/libc/lib/libthread_db.so.1文件拷贝到开发板文件系统/usr/lib/目录即可。 为了操作方便可以 scp 命令进行拷贝,使用方法可以浏览光盘资料用户手册中scp 远程拷贝文件和文件夹到开发板系统方法文档。 3 新建测试程序在 Ubuntu 上新建测试程序 test.c,用于演示 G
6、DB 调试,并输入如下代码: #include int main() int a = 1; float b = 2.0;char s16 = tronlong; int hoge_a = a*2; float hoge_b = b*2; printf(s is :%sn, s); printf(hoge_a is : %dn, hoge_a); printf(hoge_b is : %fn, hoge_b);公司官网:销售邮箱:公司总机:020-8998-62804/9技术论坛:技术邮箱:support
7、技术热线:020-3893-9734return 0;图 2执行如下命令编译程序,使用-g参数进行 GDB 编译: Host#arm-none-linux-gnueabi-gcc test.c -o test -g图 3将编译后可执行程序 test 拷贝到开发板任意路径下。 4 运行 GDBServer 和 GDB 进行远程调试在开发板可执行程序 test 所在目录下,执行如下命令启动 GDBServer。 Target#gdbserver 5:1234 ./test公司官网:销售邮箱:salestronlong.c
8、om公司总机:020-8998-62805/9技术论坛:技术邮箱:技术热线:020-3893-9734命令格式:gdbserver:。5 为 Ubuntu的 IP 地址,1234 为连接的端,如果程序是 Qt 开发的,在命令后面增加-qws参数,例如:gdbserver 5:1234 ./test -qws。 图 4Ubuntu 上的 GDB 可执行程序,可在对应开发板的 CodeSourcery 安装目录中找到。DM8148DM8127 平台使用 CodeSourcery 开发编译链工
9、具,GDB 可执行程序位于 Cod eSourcery 安装目录的如下路径: /CodeSourcery/Sourcery_G+_Lite/bin/arm-none-linux-gnueabi-gdb在 Ubuntu 中输入以下命令启动 GDB 调试,命令格式:,以 CodeSourcery 为例: Host#/home/tronlong/CodeSourcery/Sourcery_G+_Lite/bin/arm-none-linux-gnueabi-gdb/media/DM8148/Demo/test/test图 5请执行如下命令设置 GDB 库查找路径。如果不设置,可能会提示某些库找不到。
10、命令格式:set solib-search-path :.,如果缺少的库在不同的文件夹 下,就在每个完整路径后用:隔开。 公司官网:销售邮箱:公司总机:020-8998-62806/9技术论坛:技术邮箱:技术热线:020-3893-9734Host# set solib-search-path /home/tronlong/CodeSourcery/Sourcery_G+_Lite/arm-none- linux-gnueabi/libc/lib:/home/tro
11、nlong/CodeSourcery/Sourcery_G+_Lite/arm-none-linux-gnu eabi/libc/usr/lib图 6在弹出的对话框中输入以下命令,连接开发板。 Host#target remote 3:1234 /3 是开发板的 IP 地址 图 7可输入如下 GDB 调试命令,其他调试命令请输入”help target”查阅。 命令:l,参看代码。 命令:b main,在 main 处设置断点。 命令:b 5,在第五行设置断点。 命令:c,继续执行。 一直输入 c,直到程序结束。 公司官网:www.tronlong.
12、com销售邮箱:公司总机:020-8998-62807/9技术论坛:技术邮箱:技术热线:020-3893-9734(gdb) l1#include 23 i.nt fTlai.n() b = 2.0;4 lnt a = 1;5 float6 char s1678 lnt hoge _a= t ronl o ng ;1 at 0x8434:b llai.n= b*2;= a*2;9 float hoge_b 10(gdb) Breakpoi.nt (gdb) b sBreakpoi.nt 2 at
13、0x843c: (gdb) cContlnui.ng.fi.le test.c, li.ne 4. fi.le test . c, li.ne 5.Breakpoi.nt 4(gdb) CCont i.nu i.ng .1,a=fTlai.n ()lnt at t e s t . c : 41;Breakpoi.nt 2, flai.n () at test. c; 55float b = 2.0; (gdb) cConti.nui.ng.rr,P r og r aexi.ted(gdb) Inornally.图 8开发板显示如下信息,可以看到程序正确运行,即说明远程调试成功。 r oot )
14、ff 81 xx - Tr o11l ong :廿r oot E小 81 xx- Tr onl ong : m/ e Pr oces s . / t es t cr eat ed;L 1 s t eni ng on por t 1234TIe d i ,a.,Ill1TIc d / I di a /m bl K O p1m cbl k0pl / Dem o井pi d= 1 660,De ll10!gdbs e. / t es tr ve r 1 92. 1 68 . 0. 35 : 1 234fRme豆ot e de bugg i n g f mo HS i s : t On l onghos
15、t 1 92. 1 68. 0. 35Tronlong广州创龙您身边的主: 4 . 000 000l Dqe _a l S : 2 hogeb 寸 sc hi l d exi t e d 1vi t h et code = Oc hi l d exi t e d wi t h s t a t Lis 0 GDBs e r ve r e x1 t 寸哼r oot .仅 81 xx- Tr onl onq : m/ ed i a /mm cbl kOpl / Dem o#图 9创托公司官网: 技术论坛:销售邮箱: 技术邮箱:公司总机:020-8998-6280 技术热线:020-3893-97348/9更多帮助销售邮箱: 技术邮箱:supporttr
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年四川工商职业技术学院单招职业倾向性考试题库及答案详解1套
- 2026年嘉兴职业技术学院单招职业技能考试题库及答案详解一套
- 智能家居产品市场需求分析
- 养老护理员老年人生活质量提升
- 基础护理理论知识概述
- 主题教育巡讲活动
- 住院护理管理心理支持
- 维护员职业规划指南
- 2026年福建莆田市城厢区逸夫实验幼儿园城北园区招聘若干人笔试备考题库及答案解析
- 2026年国家电网二批招聘查看笔试备考试题及答案解析
- 2026年包头钢铁职业技术学院单招职业技能测试题库完整答案详解
- XX中学2026年春季学期庆祝“三八”国际妇女节女教职工座谈会讲话
- 2026年内蒙古建筑职业技术学院单招职业技能测试题库附答案解析
- (2026春新版本) 苏教版科学三年级下册全册教学设计
- 2025下半年湖南中学教师资格笔试《综合素质》真题及答案解析
- 服装设计基础课程教学计划
- 中国移动社会招聘在线笔试题
- 2026 年离婚协议书法定版民政局专用
- 垃圾填埋场封场处理方案
- GB/T 16271-2025钢丝绳吊索插编索扣
- 清华大学考生自述
评论
0/150
提交评论