本文将介绍 GNU、GCC、MinGW 等相关概念,并着重介绍 Windows 中 MinGW-w64 的下载、安装与配置。MinGW-w64 的安装方式有两种:安装程序安装、压缩包安装,压缩包既可在 SourceForge 上下载,也可在 GitHub 上下载。
前导概念
GNU
GNU 是一个自由的操作系统,全称为 GNU’s Not Unix!,起源于 GNU 计划。GNU 计划由理查德·马修·斯托曼(Richard Matthew Stallman)发起,旨在发展出一套完整的开放源代码操作系统来取代 Unix。
GPL
GNU General Public License,GNU 通用公共许可协议,缩写为 GNU GPL 或者 GPL。GPL 基于用户充分的自由,允许用户运行、修改、分发软件,但遵循 GPL 的软件的派生作品也必须遵循 GPL。
GCC
GNU Compiler Collection,GNU编译器套装,是“GNU 计划” 制作的一种优化编译器,支持将 C、C++、Go 等多种语言编译为机器语言。
MinGW
Minimalist GNU for Windows,缩写 MinGW,又称 MinGW32,是 GCC 及 GNU Binutils(一套编程工具)在 Win32 平台上的移植,用于生成 32 位 Windows 可执行文件。
MinGW-w64 用以解决 MinGW 项目更新缓慢、缺少新的重要 API 等问题,并提供 64 位支持,可用于生成 32 或 64 位 Windows 可执行程序。
所以,在 Windows 上安装 GCC 可通过在 Windows 上安装 MinGW 实现。
下载、安装与配置
前置提示:以下提供了两种下载安装方式,若因为网络问题均无法成功,则可考虑使用文末提供的附件,目前附件中包含 8.1.0 和 13.2.0 两个版本的 MinGW-w64。
进入 Downloads - MinGW-w64,在 ⌈Sources⌋ 一栏点击 SourceForge。
在 SourceForge 页面往下划,安装方式有两种,一是通过安装程序在线安装,二是下载压缩包解压安装。
安装程序安装
找到 MinGW-W64 Online Installer 一栏,点击 [MinGW-W64-install.exe](https://sourceforge.net/projects/mingw-w64/files/Toolchains targetting Win32/Personal Builds/mingw-builds/installer/mingw-w64-install.exe) 下载安装程序。
双击安装程序,点击 ⌈Next⌋。
可能会应为网络问题下载失败,提示 “Cannot download repository.txt”。若能通过魔法解决则继续,否则,放弃此安装方式,跳转至压缩包安装。
假设已解决网络问题,继续往下,则指定安装设置,有如下设置需要指定。
Version:GCC 版本,若无特殊要求,选择最新版本即可。
Architechture:架构,64系统 位选择 x86_64,32 位系统选择 i686。
Threads:接口,Windows 选择 win32,Linux、Mac OS 等其他操作系统选择 posix。
Exception:异常机制
- SJLJ:支持 32/64 位系统。
- DRARF:仅支持 32 位系统,性能优于 SJLJ。
- SEH:仅支持 64 位系统,性能优于 SJLJ。
压缩包安装
根据版本、系统架构等信息选择合适的压缩包进行下载。压缩包命名中各部分含义可参考 ⌈安装程序安装⌋ 中的相关介绍。
将压缩包解压到合适的目录。
压缩包除了可以在 SourceForge 下载,还可以在 GitHub 下载,GitHub 上的更新速度貌似比 SourceForge 快。
GitHub 上较新版的压缩包的命名又分为 msvcrt 和 ucrt。MSVCRT(Microsoft Visual C++ Runtime)和 UCRT(Universal C Runtime)是 Microsoft Windows 上的两种 C 运行时库。MSVCRT 在所有 Windows 版本上均可用,从 Windows 10 起,支持 UCRT。若支持 UCRT 则建议选择 UCRT。
配置
配置环境变量,在系统变量 Path
中新增项,值为图 6 中 bin
目录的路径。
验证
在 ⌈命令提示符⌋ 中执行 gcc -v
,若显示版本,则说明安装配置成功。
END
以上就是本文的全部内容,文档会根据自己的实际使用和各位提出的问题而不断更新。
如果觉得本文对您有一点点帮助,欢迎点赞、转发加关注,这会对我有非常大的帮助,如果有任何问题,欢迎在评论区留言,咱们下期见!
文章文档:公众号 字节幺零二四
回复关键字即可获取本文最新文档及相关附件,关键字放在公众号的本文中。