gcc命令常用选项及工作流程

苏嵌                                                                                                                              项目实战

学习日志                                     姓名:                      日期:

 

 

 

今日学习任务

Gcc命令常用选项及工作流程

今日任务完成情况

基本完成

今日开发中出现的问题汇总

 

今日未解决问题

今日开发收获

其他

 

 

 

 

 

 

 

 

 

用法:gcc [选项] [文件名] [选项] [文件名]

选项:用于控制编译的整个流程。

常用选项:

-c:对源文件进行编译或汇编。

-E:对源文件进行预处理。

-S:对源文件进行编译。

-o file :输出目标文件 file 。

 -v:显示编译阶段的命令。

 

语言选项:用于支持各种版本的 C 语言程序。  

 

调试选项:用于控制调试信息。

常用选项: -g:产生调试信息。 

 

优化选项:用于对目标文件进行优化。

常用选项:

-O1:对目标文件的性能进行优化。

-O2:在-O1 的基础上进一步优化,提高目标文件的运行性能。

-O3:在-O2 的基础上进一步优化,支持函数集成优化。

-O0:不进行优化。 

 

连接器选项:用于控制链接过程。

常用选项:

-static:使用静态链接。

-l library :链接 librar y 函数库文件。

-L dir :指定连接器的搜索目录 dir 。

-shared:生成共享文件。 

 

目录选项:用于指定编译器的文件搜索目录。

常用选项:

-I dir :指定头文件的搜索目录 dir 。

-Ldir:指定搜索目录 dir

 

这里通过编 译 C 文件 test.c 来展示 GCC 的工作流程。

例如: test.c

#include

int main()

{

   printf(“Hello world!\n”);

   return 0;

}

 

用一个图看一些上面gcc命令选项的关系

gcc命令常用选项及工作流程_第1张图片

如上图:

输入命令gcc -E test.c -o test.i得到.i文件,

输入命令“gcc -S test.i -o test.s”,得到.s文件,

输入命令“gcc -c test.s -o test.o”得到.o文件,

最后输入命令“gcc test.o -o test”,得到可执行文件test。

gcc命令常用选项及工作流程_第2张图片

你可能感兴趣的:(gcc命令常用选项及工作流程)