1、没有任何选项:gcc helloworld.c
结果会在与helloworld.c相同的目录下产生一个a.out的可执行文件。
2、-o选项,指定输出文件名:gcc -o helloworld helloworld.c
-o意思是Output即需要指定输出的可执行文件的名称。这里的名称为helloworld。
3、-c选项,只编译,不链接:gcc -c helloworld.c
-c意思就是Compile,产生一个叫helloworld.o的目标文件
4、-S选项,使用预处理C源文件产生的文件,产生汇编源文件:gcc -S helloworld.c
-S意思就是aSsemble,产生一个叫helloworld.s的汇编源文件
5、-E选项,预处理C源文件:gcc -E helloworld.c
-E意思就是prEprocess。输出不是送到一个文件而是标准输出。当然可以对它进行重定向:
gcc -E helloworld.c > helloworld.txt
6、 -g选项,产生供gdb调试用的可执行文件:gcc -g helloworld.c
产生一个叫作a.out的可执行文件,大小明显比只用-o选项编译汇编连接后的文件大。