文档详情

5第六章常用开发工具.ppt

发布:2017-04-17约3.66千字共49页下载文档
文本预览下载声明
第六章 常用开发工具;一、开发工具介绍;NetBeans;NetBeans特点;Ecplise;Ecplise特点; gcc编译系统的概念和使用 gdb程序调试工具的概念和使用 程序维护工具make 的概念和使用 ; 6.1 gcc编译系统 6.1.1 文件名后缀;6.1.2 C语言编译过程 ;2.编译阶段 编译程序(Compiler)对预处理之后的输出文件进行词法分析和语法分析,试图找出所有不符合语法规则的部分 3.汇编过程 汇编过程是汇编程序(Assembler)把汇编语言代码翻译成目标机器代码的过程 4.连接阶段 连接程序(Linker)要解决外部符号访问地址问题 连接模式分为静态连接和动态连接 ;6.1.3 gcc命令行选项;2.编译程序选项 gcc编译程序常用选项及其作用 ;3.优化程序选项 优化程序常用的选项及其作用 ;4.连接程序选项 连接程序常用的选项及其功能 ;Linux下库文件的命名有一个约定,所有的库名都以lib开头。形如: libx.a 其中,x是指定的库名 以.a(归档,archive)结尾的库是静态库,以.so(共享目标,shared object)结尾的库是动态库 生成静态库的方法实际上可分为两步: ① 将各函数的源文件编译成目标文件 ② 使用ar工具将目标文件收集起来,放到一个归档文件中 ; 6.2 gdb程序调试工具;6.2.1 启动gdb和查看内部命令;启动gdb ;breakpoints类中的命令 ;6.2.2 显示源程序和数据;2.查看运行时数据 (1)print命令 一般使用格式是 :print [/fmt] exp 当被调试的程序停止时,可以用print命令(简写为p)或同义命令inspect来查看当前程序中运行的数据。 (2)gdb所支持的运算符 ① 用运算符取出变量在内存中的地址。 如print i , print array[i] ② { type }adrexp 表示一个数据类型为type、存放地址为adrexp的数据。 ③ @ 它是一个与数组有关的双目运算符 ④ file :: var 或者 function :: var 表示文件file(或函数function)中变量var的值。 ;(3)输出格式 在print /fmt exp命令中,“/”之后的fmt是表示输出格式的字母,它由表示格式的字母和表示数据长度的字母组成 。如: 表示格式的字母:o x d u t f a i c s 表示长度的字母: b w h g (4)whatis命令显示出变量的数据类型 (5)x命令可以查看内存地址中数据的值 。其使用格式是: x [/fmt] address (6)display命令可以预先设置一些要显示的表达式。其一般格式是: display [/fmt] exp 要取消对先前设置的某些表达式的自动显示功能,可以使用以下命令: undisplay [disnum] delete display [disnum];(7)显示函数调用栈信息 显示函数调用栈信息的命令 ;6.2.3 改变和显示目录或路径 ;6.2.4 控制程序的执行;2.设置和显示观察点 (1)设置观察点 watch expr rwatch expr awatch expr (2)显示观察点 info breakpoints info watchpoints 3.设置捕捉点 命令catch的格式是: catch event 另一个命令是tcatch event 4.维护停止点 delete clear disable enable 5.运行程序 run命令的格式: run [args] ;6.程序的单步跟踪和连续执行 (1)单步跟踪 实行单步跟踪的命令是step和next,其格式是: step [N] next [N] (2)连续执行 continue,c或fg命令 7.函数调用 call expr return [expr];6.2.5 其他常用命令;6.2.6 应用示例;(1)使用
显示全部
相似文档