- 1、本文档共46页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
GDB用户手册
目录
目录 1
摘要 2
自由软件 2
自由软件急需自由文档 2
GDB的贡献者们 4
1.一个简单的GDB会话 8
2.征服GDB的进与出 13
2.1调用GDB 13
2.1.1 选择文件 14
2.1.2 选择模式 16
2.1.3 启动期间,GDB做了什么 19
2.2 退出GDB 20
2.3 Shell命令 21
2.4 Loging输出 21
3.GDB命令 22
3.1命令语法 22
3.2命令完成 23
3.3获得帮助 25
4.在GDB下运行程序 29
4.1 适合调试的编译 29
4.2 启动程序 30
4.3 程序的参数 32
4.4 程序的环境 32
4.5 程序的工作目录 34
4.6 程序的输入输出 35
4.7 调试某个已运行的进程 36
4.8 杀掉子进程 37
4.9 多线程程序的调试 37
4.10 多进程程序的调试 40
5.0停止与继续 42
摘要
象GDB这样的调试程序,目的就是让你可以查看其它程序的内部运行过程,或者是在它崩溃的那一时刻它在做什么。
GDB能做4件事(这些还需附加其他的一些事),帮助你捕获在场的错误:
·启动程序,设定任何可以影响它行为的东西。
·在特定的条件下使程序停止。
·当程序停止时,分析发生了什么。
·改变程序里的一些东西,进行一个由于bug所导致的结果的矫正性试验,同时继续了解另外一个bug。
可以使用GDB调试用C和C++编写的程序,更多信息参见支持的语言,及C与C++。部分支持Modula-2,Modula-2的更多信息参见Modula-2。
在调试使用sets、subranges、file variables或嵌套函数的Pascal程序时,目前不能工作。GDB不支持entering expressions、printing values或者类似特性的Pascal语法。
GDB可以调试Fortran写的程序,尽管那必然会涉及到带有下划线后缀的一些变量。
GDB可以调试Objective-C写的程序,既可以使用Apple/NeXT运行时库,也可以使用GNU Objective-C运行时库。
自由软件
GDB是自由软件,受GNU公共许可证(GPL)保护。GPL给予了你自由复制或改编程序的许可——就是说获得拷贝的人也就获得了自由修改它的权利(这意味着他们必须有权访问源代码),而且可以自由的发布更多的拷贝。大部分软件公司所使用的版权限制了你的自由。自由软件基金会利用GLP保护了这些自由。
基本上来说,公共许可证是一个说明你拥有这些自由的许可证,而且你不能把这些自由从任何人那里占为己有。
自由软件急需自由文档
当今的自由软件社区所存在的最大缺憾不在于软件——而在于没有我们可以随同自由软件包含在一起的好文档。好多我们十分重要的程序没有一同提供自由的参考指南和介绍性文本。对任何一个软件包来说,文档是最基本的部分。当一个重要的自由软件包没有与一个自由手册或指南一同提供时,那就是一个极大的缺憾。如今,我们拥有太多这样的缺憾了!
拿Perl来说,人们日常所使用的指导手册就不是免费的。为什么会这样呢?因为这些手册的作者们在发表它们的时候伴有很多限制项目——不能复制、不能修改、不能得到源文件——把它们从自由软件世界中驱逐出去了。
这类的事情已经不只发生过一次了,而且今后还会陆续发生。我们经常听到某位热心的GNU用户说他正在编写的一个手册,他打算把它捐献给社区,可没想到他签署了出版合同而使这个手册不自由了,所有的期望全都破灭。
自由文档,就像自由软件一样,是自由的,不需要付费的东西。非自由手册的问题不在于发行商为印刷拷贝所要承担的费用——只要它本身很好就行(自由软件基金会也出售印刷拷贝),而在于这个问题会约束手册的利用。自由手册可以以源代码的方式获得,允许复制与修改。非自由手册是不允许这么做的。
自由文档自由度的标准,一般来说与自由软件差不多。再发布(包括很多常规的商业再发布)必须被允许,不管是以在线形式还以书面形式,以便手册可以伴随着程序的每一份拷贝。
允许有关技术性方面的内容的更正也是至关重要的。当人们更改软件,添加或改变其某些特性时,如果他们负责任的话,也将会修改相应的手册——因而,他们能够为修改过的程序提供准确而清晰的文档。某个手册的页数你是无法决定的,但是为某个程序的变更版本写一份全新的手册,对于我们的社区来说,那真是没有必要。
在改进过程中所运用的某些限制是合理的。例如,要求保持原作者的版权通告、发布条款、以及作者名单,是没有问题的。在修正版本中包含是他们更正的通告也是没有问题的。只要论述的是非技术性的话题(就像这一章),可以接受连续完整的章节不可删除或被更改。能够接受这些限制,是因为它们不会妨碍社区对手册的正常使用。
无论如何,必须允许对手册中所
您可能关注的文档
- 过程控制仪表的基本知识.ppt
- 计算机基础.ppt
- Bobath疗法对脑卒中恢复期患者的康复治疗—子项目3.ppt
- 第一章 餐饮服务概述.ppt
- 教师专业化成长若干思考.ppt
- 交换机的基本配置.ppt
- 教学分析与设计.ppt
- 进度规划和控制基本理论进度规划和控制软件介绍典型案例分析 .ppt
- 教学过程目标化实现师生“双赢” 策略—谈如何上好一节英语课.ppt
- 经营决策常用的成本概念及基本方法.ppt
- 《瑞格列奈和白鲜碱舒张小鼠气道平滑肌的作用机理》.docx
- 《基于MQTT协议的消息推送集群系统的设计与实现》.docx
- 《纸质文物生物侵扰分析与脱酸固色研究》.docx
- 《清热凉血法(犀角地黄汤加味)治疗过敏性紫癜的配伍研究》.docx
- 《论公司资本认缴制下的债权人利益的保护》.docx
- 《超低温全身冷冻疗法对运动员NLRP3-caspase-1-IL-1β-IL-18信号通路的影响》.docx
- 《应用比较基因组学分析猪科动物的群体遗传结构》.docx
- 《天津市学生体质健康大数据平台的设计与实现》.docx
- 《草甘膦废盐膜-吸附联合深度除磷除杂技术研究》.docx
- 《金融负外部性的约束_危机视角》.docx
文档评论(0)