gcc 和 gdb
gcc是编译器,用于编译c,c++,java等多种语言,生成最后的可执行文件。
gdb是程序调试器。
两者都是由GNU推出的。
gcc部分
gcc的特性:交叉平台编译,就是可以在当前的CPU上编译其他CPU平台上运行的软件,比如,你可以使用Unix的操作系统编译在X86 CPU上运行的代码。
编译过程以及其中的文件后缀约定为:
- 预处理
- 编译
- 汇编
- 链接
过程 | 文件后缀 | 说明 |
---|---|---|
开始编译前 | .c | C语言源代码文件 |
.a | 由目标文件构成的档案库文件 | |
.C .cc .cxx | C++源代码文件 | |
.h | 程序包含的头文件 | |
预处理 | .i | 经过预处理后的C源文件代码 |
.ii | 经过预处理后的C++源文件代码 | |
编译 | .o | 编译后的目标文件 |
汇编 | .s | 汇编语言源代码文件 |
.S | 汇编代码经过预编译的后的文件 |
gcc编译时的参数:
其中解释一下在Linux中,默认的头文件搜索路径是:/usr/include
,默认的库文件搜索路径是:/user/lib
,如果你使用新的头文件或者库文件,那么就要加上-l
和-L
的参数了。
接下来就是一些演示了,这里