tec-002-linux-gdb调试技术.pptVIP

  1. 1、本文档共15页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
tec-002-linux-gdb调试技术

linux gdb调试技术 Linux gdb(本地) Linux gdb简介 Gdb 主要命令列表 Linux gdb简介 GDB是一个功能强大、运行稳定的程序调试工具,通过与gcc的配合使用,为基于linux的软件开发提供了一个完善的调试环境。 在使用GDB调试程序之前,可执行程序编译选项应该加上 -g -g3 包括所有的调试信息。 Linux gdb主要命令列表 调试实例:源程序 调试实例:编译调试 Gdb 远程调试简介 Gdb 远程调试简介 Gdb 远程调试:下载 Gdb 远程调试:配置编译 Gdb 远程调试:配置编译gdb Gdb 远程调试:配置编译gdbserver Gdb 远程调试实例 (1)编译下载 Gdb 远程调试实例 (2)启动gdbserver Gdb 远程调试实例 (3)启动arm-linux-gdb * Linux gdb(本地) Gdb 远程调试 退出GDB quit 退出函数回到调用 finish 停止运行的程序 kill 运行到下一断点 continue 删除断点 delete/clear 单步,函数跳入 step 显示变量或函数值 display 单步,函数跳过 next 显示断点 Info break 监视某个变量 watch 显示局部变量 Info local 设置断点 break 显示源程序 list 运行某个程序 run 说明 命令 说明 命令 //sum.c #includestdio.h int CallSum(int a) { int b; int bSum=0; for(b=1;b=a;b++) { bSum+=b; } return bSum; } int main(int argc, char* argv[]) { int MySum; int x; printf(please input a number); scanf(%d,x); MySum=CallSum(x); printf(\n 1+2+3+...+%d=%d \n,x,MySum); return 0; } 编译: gcc –g3 -Wall -o sum sum.c 调试: gdb sum //进入gdb调试 break main //设置断点 run //运行程序 watch MySum //设置一个监测点 s //单步 ....... ....... 远程调试环境由宿主机GDB和目标机调试GdbServer共同构成,两者通过串口或TCP连接。使用GDB标准程串行协议协同工作,实现对目标机上的系统内核和上层应用的监控和调试功能。 GdbServer是嵌入式系统中的一段代码,作为宿主机GDB和目标机调试程序间的一个媒介而存在。 统资源有限性,一般不能直接在目标系统上进行调试,通常采用gdb+gdbserver的方式进行调试。Gdbserver在目标系统中运行,gdb则在宿主机上运行。 gdb+gdbserver是最常用的调试应用程序的方式 一般linux发行版中都有一个可以运行的gdb,但开发人员不能直接使用该发行版中的gdb来做远程调试,而要获取gdb的源代码包,针对arm平台作一个简单配置,重新编译得到相应gdb 。 gdb官方网址 - /software/gdb/gdb.html gdb下载地址 - /gnu/gdb/ 配置编译gdb 配置编译gdbserver #tar -xzvf gdb-6.4-tar-gz #cd gdb-6.4 #./configure --target=arm-linux \ --prefix=/root/gdb/gdb-install #make #make install #export PATH=$PATH:/ root/gdb/gdb-install/bin #cd gdbserver #./configure --target=arm-linux –host=arm-linux \ --prefix=/root/gdb/gdb-install #make CC=arm-linux-gcc #make install 至此,arm-linux-gdb和gdbserver两个工具生成。 交叉编译sum程序,将sum程序和 gdbserver 复制到目标机上。 #./gdbserver 53:1234 sum 宿主机ip 端口号 #export PATH=$PATH:/root/gdb/gdb-install/bin

文档评论(0)

zijingling + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档