一、-g
可执行程序包含调试信息,目的是为了给 GDB 工具调试程序使用。
二、-o
指定输出文件名,如不指定 -o,默认输出文件名为 a.out。
1 | 如:gcc hello.c -o hello // 指定编译出来的文件名为 hello |
三、-c
只编译不链接,产生 .o 文件,不产生可执行文件。
四、-f
编译用其它文件名书写的 Makefile。
1 | 如:make -f ./scripts/Makefile.build // 这里的 Makefile.build 就是一个其它文件名书写的 Makefile |
五、-D
执行 gcc 过程中给程序中添加宏定义。
1 | gcc test.c -o test -D CONFIG_MODE_OUTPUT |
六、-Wall
编译后显示所有警告。
七、-L
因为我们在链接时常常要用到一些第三方库,Makefile 在链接的时候使用选项 “-L” 来指定库所在的目录。
1 | LIBPATH := -lgcc -L /usr/local/arm/gcc-linaro-4.9.4-2017.01-x86_64_arm // 数学库 LIBPATH 所在目录 |