MinGW: Minimalist GNU for Windows的缩写,是原生 Microsoft Windows 应用程序的极简开发环境。编译目标仅兼容 32 位应用程序,目前最新的官方二进制版本为 GCC 9.2.0。

MinGW-W64: 衍生自 MinGW 的项目,编译目标兼容 32 位应用程序与64 位应用程序,目前最新的官方二进制版本为 GCC 8.1.0。(SourceForge)

TDM-GCC: 衍生自 MinGW 和 MinGW-w64 的项目,分为 32 位与 64 位两个版本,32 位版本的编译目标仅兼容 32 位应用程序,64位版本的编译目标兼容 32 位应用程序与 64 位应用程序,目前最新的官方二进制版本为 GCC 10.3.0。

以上三个 GCC 编译器的 Windows 发行版均兼容 POSIX 线程标准 。("pthread.h")

---------------------------------------------------------------------------------------------------------------------------------

若是安装MinGW,如下图所示点击Install并选择路径。

将Basic Setup中的Package都打上勾(实际上并不是所有的Package都有用,无脑操作的话就都勾上)。关于每个Package的作用后面会给出。

选择的方法:点击对应的Package,选择Mark for Installation(这里我已经安装过了,所以这个选项不可用)。

点击Installation->Apply Changes.如下图所示(我已经安装过了,所以选项不可用)。

然后可以参考下面步骤二、配置MinGW-w64路径和步骤三、验证安装。

注: MinGW安装时每个package下的意义

MinGW
---- MinGW Base System
-------- MinGW Compiler Suit
------------ mingw32-binutils 必选,用于编译生成的 .o 文件的链接、汇编、生成静态库等。
------------ mingw32-gcc 必选,核心的 C 编译器。
------------ mingw32-gcc-ada 可选,Ada 编译器。
------------ mingw32-gcc-fortran 可选,Fortran 编译器。
------------ mingw32-gcc-g++ 建议,C++ 编译器。
------------ mingw32-gcc-objc 可选,Objective-C 编译器。
------------ mingw32-gcc-v3-* 不建议,第三版 GCC 编译器。
------------ mingw32-libgcc 必需,C 编译器编译出来的程序的运行库。
------------ mingw32-libgfortran 可选,如选择了 Fortran 编译器,则必选,Fortran 运行库。
------------ mingw32-libgnat 可选,如选择了 Ada 编译器,则必选,Ada 运行库。
------------ mingw32-libobjc 可选,如选择了 Objective-C 编译器,则必选,Objective-C 运行库。
------------ mingw32-libstdc++ 可选,如选择了 C++ 编译器,则必选,C++ 运行库。
------------ mingw32-libgomp 可选,GNU OpenMP 库,高精度运算。
------------ mingw32-libquadmath 可选,QuadMath 库,数学运行。
------------ mingw32-libssp 可选,StackProtect 库,栈保护。
------------ mingw32-mingwrt 必选,MinGW 工具的运行库。

------------ mingw32-w32api 必选,运行 Windows 程序所必需的 DLL 文件。

-------- MinGW Source-Level Debugger

------------ mingw32-gdb 可选,GNU Debugger,命令窗口的调试器。

-------- MinGW Standard Libraries
------------ mingw32-gmp 可选,GNU 多精度运算库。
------------ mingw32-libgmp 可选,GMP 库的 DLL 文件。
------------ mingw32-libgmpxx 可选,GMP 库用于 C++ 的 DLL 文件。
------------ mingw32-mpfr 可选,MPFR 多精度运算库。
------------ mingw32-libmpfr 可选,MPFR 多精度浮点运算库的 DLL 文件。
------------ mingw32-mpc 可选,MPC 多精度运算库。
------------ mingw32-libmpc 可选,MPC 多精度浮点运算库的 DLL 文件。
------------ mingw32-libpthread-old 可选,旧版本的 POSIX 线程库的 DLL 文件。
------------ mingw32-libpthreadgc 可选,标准的 POSIX 线程库的 DLL 文件。
------------ mingw32-libpthreadgce 可选,使用 C++ 异常处理的 POSIX 线程库的 DLL 文件。
------------ mingw32-libquserex 可选,用于内核态的 POSIX 线程库的 DLL 文件。
------------ mingw32-libz 可选,zlib 库,用于 Zip 压缩及解压。
------------ mingw32-mingwrt 必选,MinGW 的开发库。
------------ mingw32-pthreads-w32 可选,POSIX 线程库的开发文件。

------------ mingw32-w32api 必选,Win32 SDK 的开发库。

---- MinGW Libraries
-------- MinGW Supplementary Libraries
------------ mingw32-lua 可选,Lua 语言的编译器、运行库等。
-------- MinGW Contributed Libraries

------------ mingw32-libunistring 可选,Unicode 字符串处理库。

---- MinGW Contributed
-------- MinGW Contributed Applications
------------ mingw32-tcl 可选,Tool Command Language,tcl 语言。
------------ mingw32-tk 可选,tcl 语言的图形用户界面。

------------ mingw32-xerces-c 可选,Xerces-C++ XML 解析库。

---- MinGW Autotools
-------- mingw32-autoconf 可选,用于 MSYS,Autoconf 的封装脚本
-------- mingw32-autoconf2.* 可选,最好全选,自动配置脚本生成工具。
-------- mingw32-automake 可选,用于 MSYS,Automake 的封装脚本
-------- mingw32-automake1.* 可选,最好全选,自动 Makefile 生成工具。
-------- mingw32-autotools 可选,用于 MSYS,自动选择 autoconf automake 等 Package。
-------- mingw32-gettext 建议,GNU 软件国际化(即多语言)库。
-------- mingw32-libasprintf 建议,GNU 软件国际化库。
-------- mingw32-libcharset 可选,字符集转换库。
-------- mingw32-libgettextpo 建议,GNU 软件国际化(即多语言)库。
-------- mingw32-libiconv 可选,字符集转换库。
-------- mingw32-libintl 建议,GNU 软件国际化库的运行时 DLL 文件。
-------- mingw32-libltdl 可选,可移植的 dlopen 替代库。

-------- mingw32-libtool 可选,共享库生成工具。

--------------------------------------------------------华丽的分隔线-------------------------------------------------------

MSYS
---- MSYS Base System
-------- msys-base 可选,自动选择 MSYS 开发环境所需的一般的 Package。
-------- msys-bash 必选,Bash (Bourne Again SHell),脚本解释器。
-------- msys-bzip2 建议,bzip2 工具及开发库、运行库。
-------- msys-core 必选,MSYS 核心文件。
-------- msys-coreutils 必选,MSYS 核心工具。
-------- msys-diffutils 建议,文件差别比较工具。
-------- msys-dos2unix 可选,将 DOS (即 Windows) 换行符转换为 Unix 换行符。
-------- msys-file 可选,判断文件类型的工具。
-------- msys-findutils 建议,查找文件的工具。
-------- msys-gawk 建议,字符串型 (Pattern) 扫描和处理语言的解释器。
-------- msys-grep 建议,打印匹配型 (Pattern) 的字符串的工具。
-------- msys-gzip 建议,gzip 工具及开发库、运行库。
-------- msys-less 建议,命令行的文本查看器。
-------- msys-locate 可选,基于数据库的 'find' 工具。
-------- msys-m4 建议,GNU 宏处理器。
-------- msys-make 建议,GNU Make 工具。
-------- msys-patch 建议,文件打补丁工具。
-------- msys-sed 建议,GNU 流编辑器。
-------- msys-tar 建议,GNU Tar 文件打包工具。
-------- msys-termcap 建议,终端数据库。
-------- msys-texinfo 建议,显示帮助文件的工具。
-------- msys-tiny 可选,自动选择 MSYS 所需的最少 Package。

-------- msys-xz 建议,lzma 工具及开发库、运行库。

---- MinGW Developer Toolkit
-------- mingw-developer-toolkit 建议,自动选择 MSYS 环境下用于 MinGW 开发所需的 Package。
-------- msys-autogen 建议,简化程序的生成,配合 autotool 使用。
-------- msys-bison 建议,GNU 语法分析器生成器。
-------- msys-bsdcpio 可选,BDS 版的 cpio 工具。
-------- msys-bsdtar 可选,BSD 版的 tar 工具。
-------- msys-cvs 可选,CVS 版本控制工具。
-------- msys-diffstat 可选,diff 工具生成文件的查看器。
-------- msys-flex 建议,快速词汇分析器生成器,一般和 bison 一起使用。
-------- msys-guile 建议,Scheme 解释器和库。
-------- msys-help2man 可选,生成 man 页面。
-------- msys-inetutils 可选,通用网络客户端,包括 telnet ftp 等。
-------- msys-libopenssl 建议,OpenSSL 库。
-------- msys-lndir 可选,Xorg 递归目录符号链接工具。
-------- msys-mksh 可选,MirBSD Korn Shell,脚本解释器。
-------- msys-mktemp 可选,创建临时文件或目录。
-------- msys-openssh 建议,OpenSSH,SSH 客户端。
-------- msys-openssl 建议,OpenSSL 工具。
-------- msys-perl 建议,Perl 解释器。
-------- msys-rsync 建议,文件传输程序。

-------- msys-vim 可选,控制台下的文件编辑器。

---- MSYS System Builder
-------- 这个是用于编译用于 MSYS 系统的程序的编译器,一般不需要。

---------------------------------------------------------------------------------------------------------------------------------

以下以安装MinGW-W64进行说明。

一、安装MinGW-W64

方法1. 下载MinGW-W64 Online Installer(在线安装器)

官网下载步骤:
官方地址:http://mingw-w64.org/doku.php

① 选择Downloads,进入 MinGW-w64 下载详情页面。

② 点击SourceForge,进入MinGW-w64 下载页面。

③ 下拉至底部选择“MinGW-W64-install.exe”超链接,将会自动下载MinGW-W64 在线安装器。

④ 若一直下载不动,可尝试点击下图中红色方框。

更换其它镜像(下图为翻译成中文后的页面)。

下载之后是一个如下所示的可执行文件。

下载完成后,双击进入安装。

安装步骤:

① 选择版本

说明:Version 指的是 gcc 的版本,如果没有特殊的需求,一般选择最高的版本号即可。
操作:在这个版本中,最高版本是8.1.0 ,选中它即可。

② 选择电脑系统架构

说明:电脑系统是 64位的,选择 x86_64;如果是 32位 系统,则选择 i686 即可。

③ 选择操作系统接口协议

说明:如果你想要开发 Windows 程序,需要选择 win32 ,而开发 Linux、Unix、Mac OS 等其他操作系统下的程序,则需要选择 posix。

④ 选择异常处理模型(64位)

说明:异常处理在开发中非常重要,在开发的过程中,大部分的时间会耗在处理各种异常情况上。seh 是新发明的,而 sjlj 则是古老的。seh 性能比较好,但不支持 32位。 sjlj 稳定性好,支持 32位。建议64位操作系统选择seh。

然后选择路径,点击Next即可。

如遇到安装进度一直不动,如下图所示时,可尝试方法2或方法3。

方法2.直接下载对应版本的压缩包文件

以MinGW-W64 GCC-8.1.0版本为例。

直接点击对应版本,电脑系统架构,操作系统接口协议和异常处理模型(64位)的超链接,将会自动下载一个压缩包。(若仍遇到下载不动的情况,可按照上面下载在线安装器时的方法尝试解决)。

方法3.百度云链接

链接: https://pan.baidu.com/s/1-b19TzedrE1N9Tov7-4tqQ

提取码: 9wtq

二、配置MinGW-W64路径

右键“此电脑”–>属性–>高级系统设置–>环境变量–>设置系统变量

若桌面没显示“此电脑”,可使用快捷键win+e,打开Windows资源管理器,左侧栏有“此电脑”。

双击Path或点击Path后再点击编辑。

将之前安装的的 MinGW-W64 的 bin 文件夹路径,复制到新增的空白变量位置里,即可完成 MinGW-W64 的配置工作。

三、验证安装

win+r,打开“运行”对话框,输入cmd进入命令行,输入“gcc -v” (注意空格)并按回车键,可再输入“g++ -v” (注意空格)并按回车键,会出现一连串字母数字下划线符号,表明环境配置成功,恭喜您,完成了gcc环境配置。如下图所示将会显示 MinGW-W64 的组件列表。

从现在开始你就可以用 MinGW-W64 来编译 C/C++ 了。

关于win10下配置VS Code C/C++编译环境(Mingw-w64)

win10安装MinGW-W64的一点心得相关推荐

  1. (Windows系统)MATLAB2021a安装MinGW -w64

    %%MATLAB2021a安装MinGW -w64%%%%%%%%%%%%% %%创建时间2021年6月24日%%%%%%%%%%%%%%%%%%% %%创建者回全奇%%%%%%%%%%%%%%%%% ...

  2. win10安装Mingw,看这里!

    在win 10上MinGW64如何安装? 看这里就对了! 1.下载文件 这个安装包比较省时省力,链接: https://pan.baidu.com/s/1YKPdWDCU4EkeRmGEJRpm7Q ...

  3. python anaconda安装redis_python与redis的初次碰撞——把玩redis数据库的一点心得

    Redis是最近几年NoSQL(非关系型数据库)中最异军突起的一位了,在很多大小公司的业务中起了很大的作用.Redis是键值形式的存储系统,跟mongodb的存储方式有些类似(感觉NoSQL似乎都有这 ...

  4. u盘装linux运行慢,从U盘安装Linux的一点心得体会

    前些天下载了一个UBUNTU8.04,一个Fedora9两个linux的安装镜像.不过手头上没有DVD刻录光驱,只有一个2G的U盘,主机bios 可以设置从usb启动.于是就想从U盘启动安装linux ...

  5. Win10下MinGW的下载、安装

    从今天开始学习C++.教材使用<primer c++第五版>(中文版),序言中孟岩大佬推荐的几本书有<c++标准程序库><Effective C++><C++ ...

  6. Win10安装Latex

    Win10安装Latex 文章目录 Win10安装Latex 前言 下载Latex 安装Latex 安装Latex编辑器 配置编译工具 Latex简单例子 前言 对于外文翻译,大部分同学首选使用的工具 ...

  7. VMware vSphere Client WIN10安装问题

    VMware vSphere Client WIN10安装问题 VMware vSphere Client 这个软件在百度一搜一大把,下面是我的版本 VMware-viclient-all-6.0.0 ...

  8. WIN10安装ubuntu全过程

    WIN10安装ubuntu全过程 第一步:启用linux子系统! 第二步:下载windows linux 子系统 第三步:安装ubuntu 18.04 第一步:启用linux子系统! 然后电脑要重启! ...

  9. mysql数据库管理系统模式_MYSQL命令行模式管理MySql的一点心得

    MYSQL命令行模式管理MySql的一点心得 MYSQL命令行模式管理MySql的一点心得 MySql数据库是中小型网站后台数据库的首选,因为它对非商业应用是免费的.网站开发者可以搭建一个" ...

最新文章

  1. windows10中git 远程仓库使用
  2. SAP MM初阶之采购信息记录里的Prior Supplier栏位
  3. 使用VSCode编辑Markdown
  4. asp php时间格式,ASP_asp格式化日期时间格式的代码,' ====================================== - phpStudy...
  5. 【转】 已知有个rand7()的函数,返回1到7随机自然数,让利用这个rand7()构造rand10() 随机1~10...
  6. 160 - 23 Chafe.1
  7. python导入excel模块_python使用openpyxl模块操作excel
  8. 这个技能,让可视化大屏开挂一样的秀!
  9. 算法导论8-5习题解答(平均排序)
  10. QCC高通烧录驱动安装方法
  11. linux添加变色龙引导,u盘启动盘制作win7变色龙引导工具
  12. MATLAB 图像识别
  13. iOS 集成Facebook登陆
  14. OSChina 周日乱弹 —— 每天叫醒我的是Bug
  15. 英飞凌硅麦可以接收到超声波吗?
  16. 实现宏offsetof()
  17. 基于Java基础的图书管理系统
  18. 小米10000MAH充电宝四个灯同时闪烁故障维修
  19. 一个好的预发布环境应该是怎么样的?
  20. 选择恐惧症Java?Python?

热门文章

  1. vivado实现4x4阵列乘法器
  2. Vuex 使用指南(todoList 案例)
  3. hpu 1087 KACA的围棋入门
  4. ssh 免密登录失败
  5. 知识追踪入门系列-论文资料汇总
  6. Java实现字符串转换成整数
  7. 2009全民健身日全国青少年攀岩赛(杭州站)开始报名!
  8. vue生命周期+微信小程序生命周期详解
  9. 怎么做品牌五感营销策略,归纳解读
  10. 外汇交易中144均线回调中的反转策略 反转策略的含义 反转是怎样形成的