MinGW是一个可自由使用和自由发布的Windows特定头文件和使用GNU工具集导入库的集合。MinGW可以为编写C,C++程序,用户提供更加全面的操作,允许你生成本地的Windows程序而不需要第三方C运行库。实际上MinGW 并不是一个C/C++ 编译器,而是一套GNU工具集合。除开GCC (GNU 编译器集合) 以外,MinGW 还包含有一些其他的GNU 程序开发工具 (比如gawk bison 等等)。
MinGW软件功能
用于生成Windows二进制文件的GNU工具的(编译器、链接器和档案管理器)
用于Windows平台安装和部署MinGW和MSYS的命令行安装器(mingw-get)
用于命令行安装器的GUI打包器(mingw-get-inst)
MinGW安装步骤
1、在本站下载MinGW后,在电脑本地得到一个压缩包,使用360压缩软件解压后,双击.exe文件进入
2、下载安装文件或者仅仅下载,您可以根据您自己的需求决定,选择完成后点击【Next】。
3、进入MinGW安装协议界面,点击【I Agree】。
4、选择一个MinGW包安装,previous(以前)、current(现在)、candidate(候选),您可以自行选择,选择完成后点击【Next】
5、选择MinGW安装程序,小编建议默认就可以了,然后点击【下一步】。
6、选择MinGW安装位置,您可以点击【next】,软件会自动安装。或者您可以点击【Browse】,在弹出的安装位置界面中,您可以自行选择MinGW安装位置,选择完成后,点击【next】。
7、准备安装MinGW,点击【Install】开始安装软件,您需要耐心等待软件安装完成就可以了。
GCC命令行参数
复习一下GCC命令行参数,看看各个版本的区别——
32位版:加上 -m32 参数,生成32位的代码。
64位版:加上 -m64 参数,生成64位的代码。
debug版:加上 -g 参数,生成调试信息。
release版:加上 -static 参数,进行静态链接,使程序不再依赖动态库。加上 -O3 参数,进行最快速度优化。加上-DNDEBUG参数,定义NDEBUG宏,屏蔽断言。
当没有-m32或-m64参数时,一般情况下会生成跟操作系统位数一致的代码,但某些编译器存在例外,例如——
32位Linux下的GCC,默认是编译为32位代码。
64位Linux下的GCC,默认是编译为64位代码。
Window系统下的MinGW,总是编译为32位代码。因为MinGW只支持32位代码。
Window系统下的MinGW-w64(例如安装了TDM-GCC,选择MinGW-w64),默认是编译为64位代码,包括在32位的Windows系统下。
MinGW分为较早开发的MinGW32和之后为编译64位程序开发的MinGW-w64,MinGW32只能编译32位的程序,而mingw64不仅能编译64位程序,也能编译32位程序,还能进行交叉编译,即在32位主机上编译64位程序,在64位主机上编译32位程序。