GCC常用编译选项:
1) -c <source_file> 指定源文件(.c,.cpp)
2) -o <obj_name> 指定目标文件(.o,可执行文件)
3) -L<path_name> 指定共享库的搜索路径或者全路径名
4) -l<library> 指定共享库的名称
5) -I<path_name> 指定头文件的搜索路径
6) -D<macro_name> 指定编译时定义的宏
7) -g 编译时加入调试信息
8) -ldl 表示生成的对象模块需要使用共享库(Linux)
9) -lstdc++ 支持STL标准库
10) -fpic/fPIC 产生位置无关代码,构造共享库
11) -shared 生成共享目标文件。通常用在建立共享库时。
12) -static 禁止使用共享连接。
13) -Wall 生成所有警告信息。
14) -nostdinc 不要在标准系统目录中寻找头文件。只搜索`-I' 选项指定的目录 (以及当前目录, 如果合适)。
15) -nostdlib 不连接系统标准启动文件和标准库文件。只把指定的文件 传递给连接器。
16) -O0 不进行优化处理。
-O 或 -O1 优化生成代码。
-O2 进一步优化。
-O3 比 -O2 更进一步优化,包括 inline 函数。