(1)仅将原始码编译成为目标文件,并不制作链接等功能。
[root@Server01 ~]# gcc -c hello.c
上述程序会自动生成hello.o文件,但是并不会生成二进制可执行文件。
(2)在编译的时候,依据作业环境给予执行速度优化。
[root@Server01 ~]# gcc -O hello.c -c
上述程序会自动生成hello.o文件,并且进行优化。
(3)在进行二进制可执行文件制作时,将链接的函数库与相关的路径填入。
[root@Server01 ~]# gcc sin.c -lm -L/usr/lib -I/usr/include
在最终链接成二进制可执行文件的时候,这个命令较常执行。
-lm指的是libm.so或libm.a函数库文件。
-L后面接的路径是刚刚上面那个函数库的搜索目录。
-I后面接的是源码内的include文件所在的目录。
(4)将编译的结果生成某个特定文件。
[root@Server01 ~]# gcc -o hello hello.c
程序中,-o 后面接的是要输出的二进制可执行文件名。
(5)在编译的时候,输出较多的信息说明。
[root@Server01 ~]# gcc -o hello hello.c -Wall
加入-Wall之后,程序的编译会变得较为严谨一点,所以警告信息也会显示出来。