- 1、本文档共14页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Linux常用工具速查实用手册第7章-常用调试工具
第七章 常用调试工具 本章内容及目的: 了解GDB调试器的主要功能 掌握GDB命令的格式及其工作流程 重点掌握GDB调试器的各种命令,如断点设置类、数据查看类、文件查看类、程序执行类命令 重点掌握GDB调试器的高级命令,如条件测试命令、shell通信命令以及GDB设置命令等 了解内存调试工具memwatch、mtrace以及yamd的工作流程 GDB调试器 GDB的功能 GDB调试工具的功能如下所示: 1)可以在程序运行过程中的查看运行的状态 2)让被调试的程序在指定的断点处暂停 3)当程序被暂停时,用户可以查看程序中各表达式和变量值 4)程序暂停后可进行单步调试,用户通过它可以检查此后每步的结果是否跟预测一致,并且可以检查每步出现的错误。 5)用户可以改变程序中的变量或者执行顺序来验证程序是否正确。 GDB的使用方法非常简单,在命令行下其使用格式如下所示: gdb [options] [file] 此格式表示使用gdb调试工具对可执行文件file进行“options”调试 GDB的工作流程 1)查看源文件内容 2)设置及查阅断点 3)运行程序代码 4)查看变量值 5)单步运行 6)继续执行 7)退出程序 GDB调试器的命令 GDB的命令行如同shell程序一样采用交互式调试界面,用户进入gdb之后就可以通过各种命令对程序进行调试。 GDB的命令按照功能主要分可划分为如下大类: breakpoints:断点设置类 data:数据查看类 files:指定并查看文件类 internals:维护命令类 running:程序执行类 stack:调用栈查看类 statu:状态查看类 tracepoints:跟踪程序执行类 每类命令下又分为若干子命令。 断点设置类 数据查看类 文件查看类 程序执行类 GDB高级使用 GDB提供许多高级的使用方法,重要的使用方法: 条件测试功能 shell通信功能 窗口观察功能 设置显示选项 1)设置参数地址信息 2)设置语言 3)设置数组 条件测试功能 GDB提供条件测试的功能,即在某些条件下触发断点或者启动某些任务,其格式如下: break 行号或函数 if condition 该格式表示如果condition(条件)是真,程序到达指定行或函数时停止,并在指定行和函数上设置断点。 shell通信功能 当运行一个调试程序时,经常需要在shell命令行下执行命令,因此,GDB同样提供与shell通信的机制,这样就可以使用户不用离开gdb就可以直接执行shell程序,它的语法格式如下: (gdb) shell command Command是用户要执行的shell命令 窗口观察功能 当用户调试一个很大的程序,并且在跟踪一个关键的变量时,发现这个变量不知在哪里被改动过,如何才能找到改动它的地方,这时用户就可以使用watch命令 设置参数地址信息 Gdb中有支持是否显示参数地址信息的功能,用户可以设置其打开或者关闭,设置的格式如下: set print address [on/off] 要设置显示地址信息则使用on,若要求不显示地址信息则使用off 设置语言 Gdb支持许多语言,例如C、C++、Fortran、Java以及汇编等等,一般而言gdb会根据所调试程序来确定所使用的调试语言 设置语言的格式如下: set language [Option] 如果set lauguage命令后面的option什么也不写,那么gdn将显示所支持的所有语言种类。 GDB调试器综合使用实例 以gdbtest为例,在gdb命令行下完成以下操作。 1)找出本程序的bug,并修正程序 2)在gdb下查看程序所在的目录 3)判断最大值是否大于100,如果大于100,那么在程序第31行设置一个断点。 * 进入gdb调试后执行File文件中的命令 --command=File 打印当前版本信息并退出 --verison 使用File文件作为可执行文件和变量文件 --se=File 打印帮助信息 -help 使用窗口交互 -w 使用emacs-GDB交互显示输出信息 --fullname 在启动gdb后不打印许可信息 --quiet 进入gdb调试时改变当前路径到DIR目录,例如,gdb –cd=/root表示进入gdb调试后路径改为root --cd
您可能关注的文档
最近下载
- 《小学科学教学设计》课程教学大纲.doc
- Book 2 Unit 6 单元词汇(课件)-高中英语(外研版2019必修第二册).pptx
- 面瘫(周围性面神经炎)-中医诊疗指南-等级评审.pdf
- 2024-2026中国科技类消费电子产业发展白皮书.pptx
- 山东省德州市优高联盟九校2025届高三上学期1月联考英语试卷(含答案).docx VIP
- AP统计学 2016年真题 (选择题+问答题) AP Statistics 2016 Real Exam and Answers (MCQ+FRQ).pdf VIP
- 有限公司增资扩股协议书通用范本5篇.docx
- 50首经典红歌歌词.doc
- 部编版语文小学二年级下册第二单元集体备课主讲课件.pptx
- (2013年第一次全厂职工大会.doc VIP
文档评论(0)