Linux工具GCC编译器的原理分析

这篇文章给大家介绍Linux工具GCC编译器的原理分析,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

创新互联建站是一家集网站建设,龙岩企业网站建设,龙岩品牌网站建设,网站定制,龙岩网站建设报价,网络营销,网络优化,龙岩网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。

概述

GCC(GNU Compiler Collection)编译器是GNU Linux操作系统的默认编译器

编译流程

预处理

预处理器CPP进行预处理,把头文件,宏等进行展开,生成.i文件

编译

GCC 支持多种编程语言,假设是c语言则ze调用C语言的编译器cll 。编译完成之后生成汇编程序,输出.s的文件

汇编

GCC调用汇编器as 进行汇编,生成可重定向的目标程序

链接

GCC 调用链接器把所有的目标文件和C语言的标准库连接成可执行的二进制文件

编译选项

本地编译在当前的目标平台编译出来的程序,并且一般只运行在当前编译的平台。

交叉编译在一种平台上编译,然后放到另外一种平台上运行,这过程称为交叉编译

gcc编译选项

选项

-c

编译、汇编指定的源文件,但是不进行链接

-S

编译指定的源文件,但是不进行汇编

-E预处理指定的源文件,不进行编译
-o生成目标文件,[file1] [file2] 将文件 file2 编译成可执行文件 file1
-Idirectory 指定 include 包含文件的搜索目录
-g生成调试信息,该程序可以被调试器调试

-Wall

生成所有警告信息


关于Linux工具GCC编译器的原理分析就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。


标题名称:Linux工具GCC编译器的原理分析
文章出自:http://myzitong.com/article/igipos.html