GCC在CentOS中的默认编译选项主要包括以下几类:
-c:生成目标文件(.o)。-S:生成汇编代码文件。-E:仅进行预处理,不生成文件,但可以重定向到指定文件。-pipe:在编译过程的每一步中显示使用的命令。-x language:设定文件所使用的语言,默认后缀名为.c。其他可选值包括objective-c、c-header、c++-output、assembler、assembler-with-cpp等。-ansi:只支持ANSI标准的C语法,禁用GNU C的某些特色,如asm或typeof关键词。-frtti:开启RTTI支持(dynamic_cast和typeid需要用到),在GCC中是默认选项,可以使用-fno-rtti将其禁用。-lstdc++:开启对C++特性支持的编译,如new、delete等。-Aassertion、-dD、-dM、-dN、-E:只激活预处理,但不生成文件,可以重定向到指定文件。-C:一般与-E一起使用,在预处理时不删除注释信息,便于分析程序。此外,GCC在编译时还会默认包含一些系统库和路径,例如:
-lstdc++:链接C++标准库。-static:链接静态库。-ldl:链接动态链接库(-shared编译共享动态库时需要加上-ldl)。请注意,这些选项可能会随着GCC版本的更新而发生变化。建议查阅最新的GCC文档以获取最准确的信息。