发布网友 发布时间:2022-04-24 18:28
共2个回答
热心网友 时间:2023-11-01 08:32
gcc编译分为四部;
第一步,预编译,将程序中的宏定义等预编译;
第二步,编译,将*.h,*.c等文件编译成为*.o文件;
第三步,汇编;
第四步,连接,将*.o文件连接库,生成可执行文件!
热心网友 时间:2023-11-01 08:32
源文件→预处理→编译→汇编→链接→可执行文件
示例:
预处理(Pre-Processing):根据预处理命令(#开头)修改源文件
# gcc -o hello.i -E hello.c or # cpp -o hello.i hello.c
编译(Compiling):语法检查,并将源文件翻译成汇编文件
# gcc -o hello.s -S hello.i or # cc1 -o hello.s hello.i
汇编(Assembling):将汇编文件转换为目标文件(二进制)
# gcc -o hello.o -c hello.s or # as -o hello.o hello.s
链接(Linking):编址和符号链接,生成可执行文件
# gcc -o hello hello.o or # ld -o hello hello.o