Linux之gcc的一些常见用法
1.gcc编译器对程序的编译,分为四个阶段:
1>预编译(pre-processing):在预处理阶段,输入的是C语言的源文件,通常为*.c。它们一般带有*.h之类的头文件。这个阶段主要处理源文件中的#ifdef,#include,#define预处理命令。该阶段会生成一个中间文件*.i文件。
这个阶段使用命令:
gcc –E tiger.c –o tiger.i
它通过对源文件tiger.c使用-E选项来生成中间文件tiger.i
2>编译和优化(compiling):在编译阶段,输入的是中间文件*i,编译后生成汇编文件*.s
这个阶段使用命令:
gcc –S tiger.i –o tiger.s
3>汇编(assembing):在汇编阶段,将输入的汇编文件*.s转换成二进制机器代码*.o.
这个阶段使用命令:
gcc -c tiger.s –o tiger.o
这个阶段使用命令:
gcc tiger.o -o tiger
注:
以上所有阶段,可以直接使用gcc -o tiger tiger.c,直接生成可执行文件。
gcc -o tiger tiger.c(也可以使用gcc tiger.c -o tiger)
相关推荐
wanyi0 2020-11-03
onlykg 2020-08-01
xuguiyi00 2020-07-09
FlightForever 2020-06-28
zghover 2020-06-25
zllbirdonland 2020-06-16
choupiaoyi 2020-06-13
Wonder的学习 2020-06-11
cwgxiaoguizi 2020-06-07
secondid 2020-06-06
昭君出塞 2020-06-03
fushilin 2020-06-03
jackadmi 2020-06-03
85407718 2020-05-30
wanggongzhen 2020-05-28
sunln00 2020-05-07
wangxiaoxue 2020-05-05
ningningmingming 2020-05-01