Gcc常用选项及编译过程

Posted yuehuiluan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Gcc常用选项及编译过程相关的知识,希望对你有一定的参考价值。

Gcc常用选项及编译过程

Gcc --help 查看gcc版本信息

使用方法:

Gcc [选项] <文件>

选项:

-v 查看gcc版本或编译详细过程

-o<文件> 输出文件

-E                       仅作预处理,不进行编译、汇编和链接

-S                       编译到汇编语言,不进行汇编和链接

-c                       编译、汇编到目标代码,不进行链接

-o <文件>               输出到 <文件>

编译过程:

  -E      -s            -c            -o

预处理=====编译=====汇编=====连接

A.c      a.i        a.s          a.o     

 

            编 汇       

a.c  ======  a.i  ======  a.s  ======  a.o  ======  a

           -E -s -c       -o

 

预处理: gcc  -E -o a.i a.c -E 仅作预处理,不进行编译、汇编、连接

 

编译: gcc -s -o a.s a.i -s 编译到汇编语言,不进行汇编、连接

 

汇编: gcc -c -o a.o a.s -c 编译汇编代码到目标文件,不进行连接

 

连接: gcc -o a a.o -o 连接生成机器码

 

 

后缀名 语言种类 后期操作

.c c语言 预、编、汇

.C C++语言 预、编、汇

.cc C++语言 预、编、汇

.Cxx C++语言 预、编、汇

.m objective-c 预、编、汇

.i 预处理后文件 编、汇

.ii 预处理后C++文件 编、汇

.s 汇编语言文件 汇

.S 汇编语言文件 预、汇

.h 预处理文件 通常不出现在命令中

 

静态连接:文件较大,生成文件包含程序的全部库

 

 

2019年11月25日08点39分

以上是关于Gcc常用选项及编译过程的主要内容,如果未能解决你的问题,请参考以下文章

gcc编译链接原理及使用

gcc 常用编译选项

Linux基础常用开发工具——gcc/g++编译器

Linux下详解gcc编译过程(含代码示例)&& gcc使用教程

gcc之编译4步曲

Linux系统GCC常用命令和GCC编译过程描述