在linux下的C语言编程中,使用GNU GCC编译C源代码生成可执行程序是很有必要的。



一、GCC快速启动



GCC指令的一般格式是由{ }选项}编译的文件{选项}。



其中,目标文件可以默认,GCC默认为可执行文件名:编译文件。



让我们看看经典的介绍程序你好世界!



# VI你好。C



#包括



#包括



空主(空)



{



printf(Hello World!RN;



}



将GCC编译成一个执行程序。



# GCC你好。C



这个命令产生你好。C直接到最终的可执行二进制程序a.out



这个命令隐式执行(1)预处理,(2)编写汇编程序,(3)和(4)形成最终的二进制可执行程序的链接。输出文件没有被指定在这里,和默认的输出是a.out。



如何指定最终二进制可执行程序的名称,然后指定名称和-o选项。例如,您需要生成执行程序HELLO.EXE



所以



# GCC你好。C O HELLO.EXE



二、GCC的命令分析——四个步骤



从上面我们知道GCC编译器源代码生成最终的可执行二进制程序,GCC背景意味着四个阶段。



GCC编译C源代码有四个步骤:



编译前汇编汇编链接球



现在我们使用GCC命令选项逐一剖析GCC进程。



1)预处理(预处理)



在这个阶段,编译器将编译包含在C源代码的头文件,如stdio. h,用户可以使用gcc的选项;E看到。



用法:# GCC -你好。C啊。我



效果:hello预处理输出hello。



{根} # GCC -你好。C啊。我



{根} # LS



你好,你好。



{根} # VI你好,我



# 1你好。C



# 1



# 1



# 1你好。C



# 1 / usr /包括/ STDLIB. H 13



# 25 / usr /包括/ STDLIB. H 3



# 1 / usr /包括/特点。H13



# 291 / usr /包括/特点。H3



# 1 / usr /包括/系统/ cdefs。H13



# 292 / usr /包括/特点。H23



# 314 / usr /包括/特点。H3



# 1 / usr /包括/ GNU /存根。H13



# 315 / usr /包括/特点。H23



# 26 / usr /包括/ STDLIB. H 23



# 3你好。C2



空主(空)



{



printf(Hello World!RN;



}