文章目录
- GCC 是什么?
- GCC 和 gcc 什么关系?
- Windows 安装 GCC
- 选型
- 下载
- 安装
- 配置环境变量
- 验证
- 参考文献
GCC 是什么?
GCC(GNU Compiler Collection)是一个开源的编译器套件,由 GNU 项目开发和维护。
GNU 编译器套件包括 C、C++、Objective-C、Fortran、Ada、Go 和 D 语言的编译器,以及这些语言的库(libstdc++,…)。GCC 最初是作为 GNU 操作系统的编译器编写的,为了满足各种编程语言的需求,后来加入了其他语言的编译器和调试器,变成了如今的编译器套件。
GCC 和 gcc 什么关系?
gcc(GNU C Compiler)是由 GNU 开发的 C 语言编译器,用于编译 C 语言代码。
gcc 是 GCC 套件中众多编译器的一个,是 GCC 的组成部分。GCC 还包含其他语言的编译器,如 g++ 用于编译 C++ 代码,gfortran 用于编译 Fortran 代码等。这些工具共同构成了 GCC 套件,提供了广泛的编译能力和选项。
Windows 安装 GCC
有时,我们想在 Windows 使用 GCC 中的编译器和其他工具,比如使用 gcc 和 gdb 编译调试 C 代码,那么该如何安装呢?
选型
Windows 版的 GCC 有三个选择:
- Cygwin
- MinGW
- mingw-w64
Cygwin、MinGW 和 mingw-w64 都是在 Windows 操作系统上运行的工具集,用于在 Windows 环境下进行开发和编译。
Cygwin 是一个在 Windows 上运行的开源项目,旨在提供类Unix环境的兼容性。它提供了一套 GNU 和 Open Source 工具,包括编译器(如 gcc)、shell、库等。通过 Cygwin,开发者可以在 Windows 上编译和运行许多 Unix 或 Linux 上的应用程序。Cygwin 提供了对 POSIX 系统调用和 Shell 环境的支持,并提供了一套基于 Cygwin 的 DLL(动态链接库)来实现与 Windows 系统的交互。
MinGW(Minimalist GNU for Windows)是一个轻量级的开发环境,旨在提供 GNU 工具链(如 gcc、g++ 等)在Windows上的运行。MinGW 提供了一组 Windows 本地 API 的头文件和库,使开发者能够使用标准的 GCC 编译器在 Windows 上编译和运行 C 和 C++ 代码。与 Cygwin 不同,MinGW 的目标是直接使用 Windows 本地 API,而不是提供类 Unix 环境的兼容性。
mingw-w64 是 MinGW 的一个分支,它专注于支持 64 位 Windows 系统。与传统的 MinGW 只支持 32 位编译器不同,mingw-w64 提供了 64 位的 Windows 编译器和开发工具。它支持使用 GCC 编译器生成 64 位 Windows 应用程序,并提供了对 Windows API 的头文件和库的支持。mingw-w64 项目也是开源的,旨在提供免费、开放的开发环境。
总之,Cygwin 提供了类 Unix 环境的兼容性,MinGW 和 mingw-w64 则提供了在 Windows 上使用 GCC 编译器进行 C 和 C++ 开发的工具集。其中,mingw-w64 专注于 64 位 Windows 系统的支持。开发者可以根据自己的需求选择适合的工具集来进行 Windows 平台上的开发。
目前,最常用的是 mingw-w64,本文将以 mingw-w64 为例来安装 GCC。
下载
安装软件,最好的下载地方便是官网。
我们在 GCC 官网可以找到不同平台版本的官方网站入口。
进入到二进制下载页面可以看到 Windows 平台的三个版本。
然后进入到 mingw-w64 项目的官网下载页面。
mingw-w64 项目提供了很多 Windows 平台的工具链和包,这里以 w64devkit 为例,安装 C 和 C++ 编译器。大家可以根据自己的需要选择对应的工具。
按照指引,去 Github 下载即可。
安装
将下载的 w64devkit 压缩包解压后,放到任意目录即可。我这里将其拷贝到 C:\Program Files\w64devkit
。
解压后 w64devkit,其目录如下:
在 bin 目录下,可以看到相关的编译器和 Linux 环境下常用的命令。
配置环境变量
要想在 Windows 命令行能够使用上述工具,需要将 w64devkit 的 bin 目录加入到环境变量 Path 中。
设置入口:开始 > 设置 > 系统 > 关于 > 高级系统设置 > 环境变量
。
将 w64devkit 的 bin 目录添加到用户变量或系统变量 Path,我这里加入到用户变量 Path 中。如果想对所有用户生效,需要加入到系统变量。
验证
打开命令行 Windows cmd 或 PowerShell,执行如下命令:
gcc --version
gcc.exe (GCC) 13.1.0
Copyright (C) 2023 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
成功输出 gcc 版本信息,表示 GCC 安装成功。
参考文献
GNU Project
GCC, the GNU Compiler Collection - GNU Project
MinGW-w64