GCC(GNU Compiler Collection,GNU编译器集合),是一套由 GNU 开发的编程语言编译器。GCC原本作为GNU操作系统的官方编译器,现已被大多数类Unix操作系统(如Linux、BSD、Mac OS X等)采纳为标准的编译器,现在已可处理C、C++、 Fortran、Pascal、Objective-C、Java, 以及 Ada与其他语言。
g++是针对GCC针对C++的版本。
gcc编译过程:
预处理 - 对源代码文件中的文件包含(include)、预编译语句(如define)进行分析
编译 - 把C/C++代码翻译成汇编代码
汇编 - 将汇编代码翻译成符合一定格式的机器代码,生成以.o为后缀的目标文件
链接 - 将汇编生成的目标文件、系统库的目标文件、库文件链接起来,最终生成可在特定平台运行的可执行文件
gcc使用:
gcc [options] [filenames]
常用选项
-o:定义输出文件;
-I:设置头文件的搜索路径;
-L:设置库文件的搜索路径;
-l(小L):指定要链接的库,后跟库名,通常是扩展名为“.a”或“.so”的特殊归档文件;
-g:gdb调试用,在可执行程序中包含标准调试信息;
gdb调