MinGW编译器的安装和配置

1、MinGW介绍

MinGW(Minimalist GNU on Windows)实际上是GCC在Windows平台上的移植版本,因此可以将源代码编译为可在 Windows 中运行的可执行程序。MinGW是,主要用于在Windows上本地编译C和C++代码。

目前适用于 Windows 平台、受欢迎的 GCC 移植版主要有 2 种,分别为 MinGW 和 Cygwin。 其中:

MinGW 侧重于服务 Windows 用户可以使用 GCC 编译环境,是真正的GCC移植,相比后者体积更小,使用更方便; Cygwin 只是提供一个类unix的环境内部是原生的GCC,借助它不仅可以在 Windows 平台上使用 GCC 编译器,理论上可以运行 Linux 平台上所有的程序;

Cygwin 只是提供一个类unix的环境内部是原生的GCC。

如果读者仅需要在 Windows 平台上使用 GCC,可以使用 MinGW 或者 Cygwin;除此之外,如果还有更高的需求(例如运行 POSIX 应用程序),就只能选择安装 Cygwin。

2、下载与安装

下载地址:sourceforge.net/projects/mi...

点击"Download Latest Version"即可

下载完成后,会得到一个名为 mingw-get-setup.exe 的安装包,双击打开它,可以看到如下的对话框:

直接点击"Install",进入下面的对话框:

读者可根据自己操作系统的实际情况,自定义 MinGW 的安装位置(建议安装到非C盘的指定目录下),然后点击"continue",进入下面的对话框:

进入安装 MinGW 配置器的界面,耐心等待安装完成(显示 100%)即可。

安装完成之后,继续点击"continue",进入下面的对话框,这是一个名为 "MinGW Installer Manager" 的软件,借助它,我们可以随时根据需要修改 GCC 编译器的配置。

常见的安装包介绍如下。

安装包名称 作用
mingw32-binutils 用于编译生成的 .o 文件的链接、汇编、生成静态库等
mingw32-gcc 核心的 C 编译器
mingw32-gcc-ada Ada 编译器
mingw32-gcc-fortran Fortran 编译器
mingw32-gcc-g++ C++ 编译器
mingw32-gcc-objc Objective-C 编译器
mingw32-libgcc C 编译器编译出来的程序的运行库

其中minw32-gcc-g++支持C++编译和minw32-gcc支持C编译。

为使 GCC 同时支持编译 C 语言和 C++,需勾选上图中标注的 2 项。选中其中一项,鼠标右键点击,选择"Mark for Installation",如图所示。

标记完以后如图所示。
GCC 还支持其它编程语言,读者可借助此配置器,随时根据需要安装自己需要的编译环境。

勾选完成后,在菜单栏中选择 Installation -> Apply Changes

弹出如下对话框:

选择"Apply"。然后耐心等待,直至安装成功,即可关闭此界面。

3、配置:path环境变量

在安装完成的基础上,我们需要手动配置 PATH 环境变量。

1)依次 右击计算机(我的电脑) -> 属性 -> 高级系统设置 -> 环境变量,在系统path变量中添加mingw的bin目录。

2)打开命令行窗口(通过在搜索栏中执行 cmd 指令即可),输入gcc -v指令,如果输出 GCC 编译器的具体信息,则表示安装成功。

通过上面的安装,我们就可以在当前 Windows 平台上编译、运行 C 或者 C++ 程序了。

因为 MinGW-w64 本来就是将 GCC 移植到 Windows 上的产物,所以操作方式和 GCC 一样,只是在 Linux 下命令是被键入到"终端"中,而 Windows 下则是被键入到"命令提示符"里。

相关推荐
Cache技术分享几秒前
233. Java 集合 - 遍历 Collection 中的元素
前端·后端
回家路上绕了弯24 分钟前
五分钟内重复登录 QQ 号定位:数据结构选型与高效实现方案
分布式·后端
AI三林叔24 分钟前
第2章 MCP协议深度解析
后端
Felix_XXXXL1 小时前
Spring Security安全框架原理与实战
java·后端
JaguarJack1 小时前
从零开始打造 Laravel 扩展包:开发、测试到发布完整指南
后端·php·laravel
星释1 小时前
Rust 练习册 :Minesweeper与二维数组处理
开发语言·后端·rust
小蒜学长1 小时前
springboot基于Java的校园导航微信小程序的设计与实现(代码+数据库+LW)
java·spring boot·后端·微信小程序
微学AI2 小时前
基于openEuler操作系统的Docker部署与AI应用实践操作与研究
后端
王元_SmallA2 小时前
IDEA + Spring Boot 的三种热加载方案
java·后端
LCG元2 小时前
实战:用 Shell 脚本自动备份网站和数据库,并上传到云存储
后端