本文介绍了GCC(GNU Compiler Collection)的特性、支持的编程语言后缀名以及其编译流程。GCC是一个强大的、跨平台的编译系统,适用于多种编程语言,包括C、C++、Objective-C、Java等。在嵌入式领域开发中,GCC因其交叉编译能力而广泛应用。在GCC 4.0.0版本下,文章详细阐述了GCC的四个编译步骤:预处理、编译、汇编和链接。 GCC支持的源文件后缀名包括: - .c:C原始程序 - .s/.S:汇编语言原始程序 - .C/.cc/.cxx:C++原始程序 - .h:预处理文件(头文件) - .m:Objective-C原始程序 - .o:目标文件 - .i:已预处理的C原始程序 - .ii:已预处理的C++原始程序 - .a/.so:编译后的库文件 GCC的编译流程分为: 1. 预处理(Pre-Processing):这个阶段处理#include指令,展开宏定义,处理条件编译指令。用户可以通过添加"-E"选项让GCC在预处理后停止。 2. 编译(Compiling):将预处理后的文本转换成汇编代码。 3. 汇编(Assembling):将汇编代码转换成机器语言的目标文件。 4. 链接(Linking):将多个目标文件与库文件链接起来,生成可执行文件。 举例说明,GCC编译一个简单的C程序(hello.c)时,预处理阶段会引入stdio.h头文件。GCC命令的一般形式是:`gcc [选项] 要编译的文件 [选项] [目标文件]`,如果不指定目标文件,GCC默认生成可执行文件,如`hello.out`。 该文还涵盖了嵌入式Linux应用程序开发的相关内容,包括Linux的入门知识、Linux发行版的选择、Linux文件系统、Linux基础命令(如用户系统、文件目录、压缩打包、网络等命令)、Linux启动过程、系统服务管理以及C编程基础。其中,C编程部分涉及了GCC编译器的使用和选项分析,还有Gdb调试器和Make工程管理器的介绍,这对于开发和调试嵌入式应用程序至关重要。
![gz](https://img-home.csdnimg.cn/images/20210720083447.png)
![application/msword](https://img-home.csdnimg.cn/images/20210720083327.png)
![-](https://img-home.csdnimg.cn/images/20210720083327.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://profile-avatar.csdnimg.cn/98ed7f93d6524d9f976794c8757af893_weixin_26749843.jpg!1)
- 粉丝: 41
- 资源: 3955
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助
![](https://csdnimg.cn/release/wenkucmsfe/public/img/voice.245cc511.png)
最新资源
- 解决本地连接丢失无法上网的问题
- BIOS报警声音解析:故障原因与解决方法
- 广义均值移动跟踪算法在视频目标跟踪中的应用研究
- C++Builder快捷键大全:高效编程的秘密武器
- 网页制作入门:常用代码详解
- TX2440A开发板网络远程监控系统移植教程:易搭建与通用解决方案
- WebLogic10虚拟内存配置详解与优化技巧
- C#网络编程深度解析:Socket基础与应用
- 掌握Struts1:Java MVC轻量级框架详解
- 20个必备CSS代码段提升Web开发效率
- CSS样式大全:字体、文本、列表样式详解
- Proteus元件库大全:从基础到高级组件
- 74HC08芯片:高速CMOS四输入与门详细资料
- C#获取当前路径的多种方法详解
- 修复MySQL乱码问题:设置字符集为GB2312
- C语言的诞生与演进:从汇编到系统编程的革命
![](https://img-home.csdnimg.cn/images/20220527035711.png)
![](https://img-home.csdnimg.cn/images/20220527035111.png)
![](https://csdnimg.cn/release/wenkucmsfe/public/img/green-success.6a4acb44.png)