
1. 引言GCCGNU Compiler CollectionGNU 编译器套件是 Linux/Unix 系统上最常用的 C/C 编译器。无论你是刚开始学习编程还是想了解如何把代码变成可运行的程序掌握 GCC 的基础用法都是第一步。本文将用最简单的方式带你认识 GCC 并学会最基本的编译操作。2. GCC 是什么GCC 是一个编译器它能把我们写的 C/C 源代码转换成计算机可以运行的机器码。简单来说就是「把代码变成程序」的工具。2.1 安装 GCC不同系统安装方式不同这里列出最常见的几种Ubuntu / DebiansudoaptupdatesudoaptinstallgccCentOS / RHEL / FedorasudoyuminstallgccmacOSxcode-select--install安装完成后可以用下面的命令确认是否成功。2.2 支持的语言C使用gcc命令C使用g命令2.3 查看版本打开终端输入以下命令查看 GCC 是否安装成功gcc--version如果能看到版本信息说明 GCC 已经安装好了。3. 编译流程GCC 把源代码变成可执行文件主要经过四个阶段预处理、编译、汇编、链接。源代码 .c预处理 .i编译 .s汇编 .o链接 可执行文件3.1 预处理Preprocessing这一步会展开#include引入的头文件、替换#define定义的宏并删除代码中的注释。处理后的文件后缀为.igcc-Ehello.c-ohello.i3.2 编译Compilation把预处理后的代码翻译成汇编语言生成后缀为.s的汇编文件gcc-Shello.i-ohello.s3.3 汇编Assembly把汇编代码转换成机器码生成后缀为.o的目标文件gcc-chello.s-ohello.o3.4 链接Linking把目标文件与系统库合并生成最终可执行文件gcc hello.o-ohello不过作为初学者你不需要记住每个阶段的命令只需要知道一条命令就能完成全部过程gcc hello.c-ohello4. 第一个程序创建一个文件hello.c写入以下代码#includestdio.hintmain(void){printf(Hello, GCC!\n);return0;}打开终端进入文件所在目录执行gcc hello.c-ohello这条命令的意思是用 GCC 编译hello.c生成一个名为hello的可执行文件。运行它./hello输出结果Hello, GCC!恭喜你已经成功用 GCC 编译并运行了第一个 C 程序。5. 常用编译选项5.1 最常用的几个选项选项作用-o file指定输出文件名-Wall显示所有警告信息-g生成调试信息5.2 实际使用示例# 编译并指定输出文件名gcc hello.c-ohello# 编译时显示警告信息推荐gcc-Wallhello.c-ohello# 生成带调试信息的程序配合调试器使用gcc-ghello.c-ohello6. 编译多个文件当项目有多个源文件时可以一次编译gcc main.c utils.c-oapp这条命令会把main.c和utils.c一起编译生成可执行文件app。7. 常见错误与解决7.1 代码有语法错误如果代码写错了GCC 会报错并指出错误位置。例如hello.c:5:5: error: expected ; before }意思是hello.c文件第 5 行附近缺少分号。根据提示修改代码即可。7.2 头文件找不到fatal error: utils.h: No such file or directory说明编译器找不到utils.h这个头文件。可以用-I指定头文件所在目录gcc main.c -I./include-oapp8. 总结本文介绍了 GCC 最基础的使用方法用gcc hello.c -o hello编译单个文件用-Wall显示警告-g生成调试信息用一条命令编译多个源文件遇到错误时根据提示修改代码掌握这些基础操作你就已经可以开始用 GCC 编译自己的 C/C 程序了。遇到不懂的选项随时可以用gcc --help查看帮助。