linux复习(第五章)

常用开发工具
目前,Linux系统主要为用户提供gcc、gdb、 make、CVS、Perl等常用开发工具。
文件名后缀
◦.c C源文件
◦.i 预处理后的源文件
◦.s 汇编程序文件
◦.o 目标文件
gcc编译系统
四个步骤:
预处理阶段 编译阶段 汇编过程 连接阶段
过程
c C源文件
预处理阶段
◦.i 预处理后的源文件
编译阶段
◦.s 汇编程序文件
汇编过程
连接阶段
◦.o 目标文件、
阶段一:预处理阶段
◦预处理是常规编译之前预先进行的工作。 ◦读取C语言源文件,对其中以“#”开头的指令 (伪指令)和特殊符号进行处理。
注释
文件包含
宏定义
条件编译指令
◦gcc–E test.c–o test.i
阶段二:编译阶段 ◦编译程序(Compiler)对预处理之后的输出文 件进行词法分析和语法分析,试图找出所有不 符合语法规则的部分。
◦gcc–S test.c–o test.s
阶段三:汇编过程 ◦汇编过程是汇编程序(Assembler)把汇编语 言代码翻译成目标机器代码的过程。 ◦gcc–c test.c–o test.o
阶段四:连接阶段 ◦连接程序(Linker)要解决外部符号访问地址 问题。也就是将一个文件中引用的符号(如变 量或函数调用)与该符号在另外一个文件中的 定义连接起来,从而使有关的目标文件连成一 个整体,最终成为可被操作系统执行的可执行 文件。 ◦gcc–o test test.c

gdb程序调试工具
程序中的错误可按性质分为三种:
(1)编译错误,即语法错误。 (2)运行错误。 (3)逻辑错误。
◦断点(breakpoint
(1)设置断点:用break命令(缩写为b)
break linenum
2)显示断点
info breakpoints [num]
info break [num]
(3)删除断点 delete [num]

程序维护工具make

猜你喜欢

转载自blog.csdn.net/he1234555/article/details/102878181