$ gcc -Wall helloubuntu.c -o helloubuntu
在命令行中输入程序名将使其执行,如下:
$ ./helloubuntu
hello, ubuntu
源文件生成对象文件
选项 -c 指示 GCC 编译源代码文件,但将对象文件保留在磁盘中并跳过链接对象文件生成可执行文件这一步。在这种情况下,默认的输出文件的文件名同源代码文件名一致,只不过后缀换为 .o 。例如:下面的命令将生成名为 helloubuntu.o 的对象文件:T
$ gcc -c -Wall helloubuntu.c
选项 -o 可用来指定生成的对象文件的文件名。以下命令将产生名为kubuntu.o的对象文件: $ gcc -c -Wall helloubuntu.c -o kubuntu.o
当构建对象库或者生成一系列对象文件以备稍后链接用时,一条命令即可从多个源码文件生成对应的对象文件。下面的命令将生成对象文件ubuntu.o, kubuntu.o 与 xubuntu.o: $ gcc -c -Wall ubuntu.c kubuntu.c xubuntu.c
多个源文件生成可执行程序
即使多个源码文件被编译,GCC编译器也会自动进行链接操作。例如:下面的代码保存在名为 hellomain.c 的文件中并调用一个名为 sayhello()的函数:/* hellomain.c */ void sayhello(void);
int main(int argc,char *argv[])
{
sayhello();
return 0;
}
以下代码保存在名为 sayhello.c 的文件中并定义了 sayhello() 函数:/* sayhello.c */ #include <stdio.h>
void sayhello()
{