implementation of the GNU toolchain for Windows, 32-bit version; see also Mingw-w64
Factsheet
Videos
What is MinGW, why there is a lot of compilers and why this is so confusing?
c++ - Installing the latest version of mingw-w64 on Windows - Stack Overflow
Mingw: Replacing fork/vfork function (compiling linux code on windows)
Is GNU GCC C compiler the same as MinGW GCC C compiler?
I am interested in learning to program in C++. I have noticed that it requires a compiler, but there are a lot of options available, which confuses me a little. I have heard about MinGW, but I find it difficult to determine which page to download it from, as there are several options such as winlibs, sourceforge, and mingw-w64.org, and I am not sure which one is the official one. Furthermore, once on the mingw-w64 page, I find that there are multiple versions such as Cygwin, LLVM-MinGW, w64devkit, MingW-W64-builds, MSYS2, and WinLibs.com, which further complicates my decision. I wonder why there isn't a standard official compiler to avoid this confusion and what exactly MinGW is, and how the available compilers such as GCC or Clang differ. I would appreciate any guidance on which one to choose and please excuse my lack of knowledge on the subject.
GCC 10 is officially released. The personal build for Windows (MinGW-w64) that can be downloaded from https://winlibs.com requires no installation, just extract to a folder.
Building GCC on Windows from source code is very difficult and cannot be recommended to beginners. Moreover, GCC 10 has not yet been officially released and you may need to wait a few more weeks to get it.
If you want an up-to-date GCC in Windows (currently version 9.3), I recommend downloading and installing the MSYS2 package. Once you install it, launch it using the "MinGW64" icon and install the correct compiler in the terminal. For details, see this question: How to install MinGW-w64 and MSYS2?
Once you have done this, you can forget about MSYS2 and simply use the directory with the binaries in your PATH.
The maintainers of MSYS2 are very keen in supporting bleeding edge software, so once GCC 10 is released, you will be able to update to it (using the command pacman -Syu)
very soon.
