-o output_filename
确定可执行文件的名称为output_filename。如果不给出这个选项,gcc就给出预设的可执行文件名a.out。-c
只编译,不链接成为可执行文件,编译器只是由输入的.c等源文件生成.o为后缀的目标文件。-g
产生调试工具(gdb)所必要的符号信息,要想对编译出的程序进行调试,就必须加入这个选项。-O
对程序进行优化编译、链接,采用这个选项,整个源代码会在编译、链接过程中进行优化处理,这样产生的可执行文件的执行效率可以提高,但是,编译、链接的速度就相应地要慢一些。-O2
比-O更好的优化编译、链接,当然整个编译、链接过程会更慢。-ldirname
将dirname所指出的目录加入到程序头文件目录列表中。-Ldirname
将dirname所指出的目录加入到库文件的目录列表中。-lname
在链接时,装载名字为“libname.a“的函数库,该函数库位于系统预设的目录或由-L选项确定的目录下。-static
静态链接库文件。-Wall
生成所有警告信息。-w
不生成任何警告信息。-DMACRO
定义MACRO宏,等效于在程序中使用#define MACRO。
原文地址:http://www.cnblogs.com/mikelin/archive/2010/07/15/1777858.html