1,gcc功能介绍;
1)gcc是一款集C, C++, objective-c 为一身的支持IOS C 和 POSIX C标准的编译器。
2)能够处理的后缀有:
a,源文件
.c or .C---c语言
.cc or .cx ----C++语言
.m ----objective C
b, 预处理后的文件 *.i
.i ----C语言所对应的
.ii ----C++语言所对应的
C. 汇编语言:
.s or .S
D. 目标文件
1).o 目标文件
2) .a 库文件
编译器把编译生成目标代码的任务分为以下4步:
a.预处理,把预处理命令扫描处理完毕;
b.编译,把预处理后的结果编译成汇编或者目标模块;
c.汇编,把编译出来的结果汇编成具体CPU上的目标代码模块;
d.连接,把多个目标代码模块连接生成一个大的目标模块;
二,GCC的编译开关控制;
1,全局开关;
3.1.3. –c
编译成把源文件目标代码,不做连接的动作。 生成.O文件
3.1.4. –S
把源文件编译成汇编代码,不做汇编和连接的动作。 .S
3.1.5. –E
只把源文件进行预处理之后的结果输出来。不做编译,汇编,连接的动作。 .i
3.1.6. –o file
指明输出文件名是file。 如果只 gcc filename 的话那么默认生成 a.out运行程序。
1)gcc是一款集C, C++, objective-c 为一身的支持IOS C 和 POSIX C标准的编译器。
2)能够处理的后缀有:
a,源文件
.c or .C---c语言
.cc or .cx ----C++语言
.m ----objective C
b, 预处理后的文件 *.i
.i ----C语言所对应的
.ii ----C++语言所对应的
C. 汇编语言:
.s or .S
D. 目标文件
1).o 目标文件
2) .a 库文件
编译器把编译生成目标代码的任务分为以下4步:
a.预处理,把预处理命令扫描处理完毕;
b.编译,把预处理后的结果编译成汇编或者目标模块;
c.汇编,把编译出来的结果汇编成具体CPU上的目标代码模块;
d.连接,把多个目标代码模块连接生成一个大的目标模块;
二,GCC的编译开关控制;
1,全局开关;
3.1.3. –c
编译成把源文件目标代码,不做连接的动作。 生成.O文件
3.1.4. –S
把源文件编译成汇编代码,不做汇编和连接的动作。 .S
3.1.5. –E
只把源文件进行预处理之后的结果输出来。不做编译,汇编,连接的动作。 .i
3.1.6. –o file
指明输出文件名是file。 如果只 gcc filename 的话那么默认生成 a.out运行程序。