166  
查询码:00000439
GCC分步骤编译C语言程序
作者: 赵硕文 于 2020年08月31日 发布在分类 / 物联网组 下,并于 2020年08月31日 编辑

参考链接:http://c.biancheng.net/view/661.html

本节以下面的C语言代码为例进行演示:

			
     
   
   
  1. #include <stdio.h>
  2. int main()
  3. {
  4. puts("C语言中文网");
  5. return 0;
  6. }

1) 编译(Compile)

将源文件编译成目标文件需要使用 -c 选项,例如:

gcc -c main.c

就将 main.c 编译为 main.o。打开 demo 目录,就会看到 main.o:
对于微软编译器(内嵌在 Visual  C++  或者 Visual Studio 中),目标文件的后缀为 .obj ;对于  GCC  编译器,目标文件的后缀为 .o

一个源文件会生成一个目标文件,多个源文件会生成多个目标文件,源文件数目和目标文件数目是一样的。通常情况下,默认的目标文件名字和源文件名字是一样的。

如果希望自定义目标文件的名字,那么可以使用 -o 选项,例如:

gcc -c main.c -o a.o

这样生成的目标文件的名字就是 a.o。

2) 链接(Link)

gcc 命令后面紧跟目标文件的名字,就可以将目标文件链接成为可执行文件,例如:

gcc main.o

就将 main.o 链接为 a.out。打开 demo 目录,就会看到 a.out。

gcc 命令后面紧跟源文件名字或者目标文件名字都是可以的, gcc 命令能够自动识别到底是源文件还是目标文件:如果是源文件,那么要经过编译和链接两个步骤才能生成可执行文件;如果是目标文件,只需要链接就可以了。

使用 -o 选项仍然能够自定义可执行文件的名字,例如:

gcc main.o -o main.out

这样生成的可执行文件的名字就是 main.out。

下面是一个完整的演示:

$ cd demo
$ gcc -c main.c
$ gcc main.o
$ ./a.out
C语言中文网

在控制台上的真实效果为:


 推荐知识

 历史版本

修改日期 修改人 备注
2020-08-31 19:24:10[当前版本] 赵硕文 创建版本

 附件

附件类型

JPGJPG

  目录
    知识分享平台 -V 4.8.7 -wcp