本文旨在提供一份详细的 MinGW/MinGW-w64 安装教程,解答您在获取、安装、配置以及基本使用过程中可能遇到的各种问题,帮助您在 Windows 系统上轻松搭建 C/C++ 开发环境。

MinGW/MinGW-w64 是什么?

MinGW (Minimalist GNU for Windows) 和 MinGW-w64 是一组允许您在 Windows 操作系统上使用 GNU 工具链(主要是 GCC, GNU Compiler Collection)的开发环境。简单来说,它们提供了在 Windows 上编译运行 C、C++、Fortran 等语言程序所需的核心工具。

它们不是一个集成开发环境 (IDE),而是一套命令行工具,包括编译器 (gcc/g++)、链接器、调试器 (gdb) 以及其他一些实用程序。您可以将它们与您喜欢的任何文本编辑器或轻量级 IDE 结合使用。

MinGW 与 MinGW-w64 的区别

这是很多初学者会有的疑问,简单来说:

  • MinGW.org项目: 这是一个较老、主要支持 32 位 Windows 平台的项目。虽然现在也有一些 64 位支持的尝试,但更新频率和社区活跃度不如 MinGW-w64。
  • MinGW-w64项目: 这是一个更活跃、更现代的项目。它提供了对 32 位和 64 位 Windows 的全面支持,并且包含了更广泛的工具集和库。目前更推荐安装和使用 MinGW-w64。 本文主要围绕 MinGW-w64 进行讲解。

为什么选择 MinGW/MinGW-w64?

在 Windows 上进行 C/C++ 开发,除了大型 IDE(如 Visual Studio)外,MinGW/MinGW-w64 是一个非常流行的选择,原因如下:

  • 开源与免费: 完全免费使用,没有许可证限制。
  • 标准兼容性: 提供了标准的 GCC/G++ 编译器,与 Linux/macOS 等平台上的编译环境高度兼容。如果您需要跨平台开发或学习基于 GCC 的编译,它是理想选择。
  • 轻量灵活: 相较于某些大型 IDE,MinGW/MinGW-w64 更专注于提供编译工具链本身,您可以将其与任何文本编辑器或轻量级 IDE (如 VS Code, Sublime Text) 结合使用。
  • 命令行强大: 熟悉命令行编译的开发者会发现它非常便利。

从哪里下载 MinGW-w64?应该安装到哪里?

下载来源

强烈推荐从 MinGW-w64 的官方 SourceForge 页面下载:

https://sourceforge.net/projects/mingw-w64/files/

在这个页面,您会看到不同版本的压缩包或安装器。通常选择最新的稳定版本即可。

如何选择下载文件?

在 files/ > mingw-w64-install/ 或 files/ > mingw-w64-release/ 目录下,您会看到不同的压缩包命名,例如:

x86_64-*-posix-seh*
i686-*-dwarf*
x86_64-*-win32-seh*
…等等。

这些命名包含了重要信息:

  • 架构 (Architecture): x86_64 表示 64 位系统 (推荐),i686 表示 32 位系统。根据您的 Windows 版本选择。
  • 线程模型 (Threads): posix (更接近 Linux 行为) 或 win32 (更接近原生 Windows API)。对于大多数 Windows 开发,win32 可能兼容性更好,但 posix 也很常用。选择哪个取决于您的具体需求,对于初学者,两者差异可能不明显,可以先尝试 posix
  • 异常处理模型 (Exception Handling): seh (Structured Exception Handling, 64位推荐), sjlj (Setjump/Longjump, 32位常用), dwarf (DW2, 32位常用)。通常 64 位选 seh,32 位选 dwarfsjlj

简化选择: 对于大多数现代 64 位 Windows 系统用户,推荐选择包含 x86_64posixwin32 的版本。

安装目录建议

解压或安装 MinGW-w64 时,建议选择一个路径较短、不包含空格或特殊字符的目录。例如:

  • C:\MinGW
  • D:\Tools\MinGW-w64

避免安装到: C:\Program Files\ (路径长且有空格,可能引起兼容性问题)。

安装 MinGW-w64 需要多少空间和时间?

  • 磁盘空间: MinGW-w64 工具链本身大约需要 500MB 到 1GB 的磁盘空间,具体取决于您选择安装的组件。
  • 安装时间: 下载时间取决于您的网络速度。解压或运行安装器的时间相对较快,通常在几分钟到十几分钟内完成。总的来说,整个过程应该不会超过半小时。

如何下载、安装并配置 MinGW-w64?

步骤 1:下载安装包

访问前面提到的 SourceForge 链接,找到您需要的版本(例如 64位,x86_64-posix-seh 或 x86_64-win32-seh),下载对应的压缩包(.zip.7z 文件)。

有些版本可能提供一个小的在线安装器,但直接下载压缩包解压是更常见和推荐的方式。

步骤 2:解压安装包

使用 WinRAR, 7-Zip 或 Windows 自带的解压工具将下载的压缩包解压到您选择的安装目录(例如 C:\MinGW)。

解压后,您会在该目录下看到一个名为 mingw64 (对于 64位) 或 mingw32 (对于 32位) 的子目录。编译器及其他工具都在这个子目录下的 bin 文件夹里。

所以最终的工具路径看起来像这样:C:\MinGW\mingw64\bin

步骤 3:配置环境变量 (非常关键!)

为了让系统在任何地方都能找到并运行 MinGW-w64 的命令(如 gcc, g++),您需要将其 bin 目录添加到系统的 PATH 环境变量中。

操作步骤:

  1. 右键点击“此电脑”或“计算机”,选择“属性”。
  2. 点击左侧的“高级系统设置”。
  3. 在弹出的“系统属性”窗口中,点击右下角的“环境变量”按钮。
  4. 在下方的“系统变量”列表中找到名为 Path (或 PATH) 的变量,双击它。
  5. 在弹出的编辑窗口中,点击“新建”。
  6. 输入您的 MinGW-w64 bin 目录的完整路径,例如:C:\MinGW\mingw64\bin
  7. 点击“确定”关闭所有窗口。

注意: 如果您的 Windows 版本较老(如 Windows 7),编辑 PATH 变量时可能是一个单行文本框。您需要将新的路径添加到现有值的末尾,并在前面加一个分号 ; 作为分隔符,例如:原有的路径;C:\MinGW\mingw64\bin

步骤 4:验证安装是否成功

打开一个新的命令提示符 (Command Prompt) 或 PowerShell 窗口。(注意:必须是新窗口,否则环境变量不会生效)

输入以下命令并按回车:

gcc --version

如果安装和环境变量配置正确,您应该会看到 GCC 编译器的版本信息。同样,您可以测试:

g++ --version
gdb --version (如果安装了 GDB)

如果命令无法找到或显示错误,请仔细检查您的环境变量设置是否正确,以及路径是否拼写错误。

如何使用 MinGW-w64 编译程序?

安装验证成功后,您就可以在命令行中使用 GCC/G++ 编译您的 C/C++ 代码了。

假设您有一个名为 hello.c 的 C 语言文件,内容如下:

#include <stdio.h>

int main() {
  printf("Hello, MinGW!\n");
  return 0;
}

在命令提示符中,进入存放 hello.c 文件的目录,然后执行编译命令:

gcc hello.c -o hello.exe

这会在当前目录生成一个名为 hello.exe 的可执行文件。

运行程序:

hello.exe

如果您的文件是 C++ (例如 hello.cpp),使用 g++ 命令:

g++ hello.cpp -o hello.exe

安装或使用中遇到问题怎么办?

如果验证失败或编译出错,可以检查以下几点:

  • 环境变量: 再次仔细检查 PATH 变量是否正确添加了 MinGW-w64 的 bin 目录,并且没有拼写错误。确保添加的是 ... \bin 路径。
  • 命令提示符: 确保您打开的是一个“新”的命令提示符或 PowerShell 窗口,而不是在修改 PATH 之前就打开的旧窗口。
  • 安装路径: 确认 MinGW-w64 的文件确实存在于您添加的路径下。
  • 下载文件完整性: 重新下载安装包,确保文件没有损坏。
  • 权限问题: 确保您有权限将文件解压到目标目录,并且有权限修改环境变量。
  • 杀毒软件/防火墙: 有时杀毒软件或防火墙会阻止下载或执行某些文件,可以暂时禁用后重试。
  • 版本冲突: 如果您之前安装过其他编译环境(如 TDM-GCC, Cygwin 等),可能会发生冲突。可以尝试临时移除其他环境的 PATH 变量或在干净的环境下安装。

更新与卸载

如何更新?

对于通过解压安装包方式安装的 MinGW-w64,通常的更新方式是:

  1. 下载新版本的 MinGW-w64 压缩包。
  2. 备份(可选): 如果您在旧的 MinGW-w64 目录下添加了自定义文件或库,请先备份。
  3. 替换: 将新版本解压到原来的安装目录,覆盖旧的文件。(注意:如果目录结构有较大变化,可能需要先删除旧目录再解压新目录)。
  4. 验证安装:打开新的命令提示符,再次运行 gcc --version 检查是否已更新。

对于使用在线安装器安装的版本,可能安装器本身提供更新选项。

如何卸载?

由于 MinGW-w64 是自包含的(通常不写入系统注册表太多信息),卸载也很简单:

  1. 移除环境变量: 按照配置环境变量的步骤,从系统的 PATH 变量中删除 MinGW-w64 的 bin 目录路径。
  2. 删除安装目录: 直接删除您安装 MinGW-w64 的整个目录(例如 C:\MinGW)。

这样就完成了卸载。

希望这份详细的教程能帮助您顺利安装和配置 MinGW-w64,开始您的 C/C++ 编程之旅!


mingw安装教程