gcc或g++的常用选项
-E
:只进行预处理,将源代码文件中的宏定义、条件编译等预处理指令展开成实际的代码,并将结果输出到标准输出流中。这个选项通常用于调试宏定义或查看预处理后的代码(文件后缀为.i)。-S
:只进行编译,将源代码文件编译成汇编语言代码,并将结果输出到汇编语言代码文件中。这个选项通常用于查看编译器生成的汇编语言代码(文件后缀为.s)。-c
:只进行编译,将源代码文件编译成目标文件,即二进制代码文件。这个选项通常用于生成目标文件,然后将目标文件与其他目标文件一起链接成可执行文件或共享库(文件后缀为.o)。
-o 文件输出到文件 gcc 文件 -o 要生成的文件
-static 此选项对生成的文件采用静态链接
-g 生成调试信息。GNU 调试器可利用该信息
-shared 此选项将尽量使用动态库,所以生成文件比较小,但是需要系统有动态库.
-O0,-O1,-O2,-O3 编译器的优化选项的4个级别,-O0表示没有优化,-O1为缺省值,-O3优化级别最高
-w 不生成任何警告信息
-Wall 生成所有警告信息
-std=c++11 按c++11版本编译
-D 名字 设置宏