一、GCC的基本介绍
GCC(GNU Compiler Collection,GNU编译器套装),是一套由GNU开发的编程语言编译器。它是一套以GPL及LGPL许可证所发行的自由软件,也是GNU计划的关键部分,亦是自由的类Unix及苹果电脑 Mac OS X 操作系统的标准编译器。
GCC原名为GNU C语言编译器,因为它原本只能处理C语言。GCC很快地扩展,变得可以处理C++。之后也变得可处理Fortran、Pascal、Objective-C、Java,以及Ada与其他语言。Linux系统下的GCC(GNU C Compiler)是GNU推出的功能强大、性能优越的多平台编译器,是GNU的代表作品之一。
GCC是可以在多种硬体平台上编译出可执行程序的超级编译器,其执行效率与一般的编译器相比平均效率要高20%~30%。GCC编译器能将C、C++语言源程序和目标程序编译、连接成可执行文件,如果没有给出可执行文件的名字,GCC将生成一个名为a.out的文件。在Linux系统中,可执行文件没有统一的后缀,系统从文件的属性来区分可执行文件和不可执行文件。而GCC则通过后缀来区别输入文件的类别。一般情况下gcc认为预处理后的文件(.i)是C文件,并且设定c形式的连接;g++认为预处理后的文件(.i)是c++文件,并且设定c++形式的连接。
GCC所遵循的部分约定规则:
.c为后缀的文件,C语言源文件; .
a为后缀的文件,是由目标文件构成的档案库文件;
.C,.cc或.cxx为后缀的文件,是C++源代码文件;
.h为后缀的文件,