gcc/g++是gnu的C/C++编译器
- 预处理
gcc -E hello.c 生成 .i - 编译
gcc -S hello.i 生成 .s - 汇编
gcc -c hello.s 生成 .o - 链接
gcc -o hello hello.o
参数
- -x language filename
gcc -x c hello.pig - -x none filename
gcc -x c hello.pig -x none hello2.c 自动识别语言 - -include file
gcc hello.c -include /root/pianopan.h - -Idir
头文件路径 - -I-
取消前一个-Idir - -nostdin C++
规定不在 g++ 指定的标准路经中搜索, 但仍在其他路径中搜索 - -C
在预处理的时候, 不删除注释信息, 一般和-E使用, 有时候分析程序 - -llibrary
制定编译的时候使用的库
gcc -lcurses hello.c 使用 ncurses 库编译程序 - -Ldir
搜索库的路径 - -O0 、-O1 、-O2 、-O3
编译器的优化选项的 4 个级别,-O0 表示没有优化, -O1 为默认值,-O3 优化级别最高 - -g
在编译的时候,产生调试信息 - -static
禁止使用动态库 - -share
尽量使用动态库 - -Wall
生成所有警告信息 - -UMACRO
取消对 MACRO 宏的定义