Downloads
The heart of the Mingw-w64 project is headers and support libraries to run the output of GCC on Windows. Since Mingw-w64 is neither the home of GCC nor of binutils, several sets of installation packages which combine them are available.
In addition, the sources are available but most people will want to grab binaries directly.
Pre-built toolchains and packages
Version | Host | GCC / Mingw-w64 Version | Languages | Additional Software in Package Manager | |
---|---|---|---|---|---|
Arch Linux |
Arch Linux | 14.2.0/12.0.0 | Ada, C, C++, Fortran, Obj-C, Obj-C++ | many | |
Cygwin |
Rolling | Windows | 11.3.0/10.0.0 | C, C++, Fortran, Obj-C | many |
Debian |
Debian 10 (Buster) | 8.3.0/6.0.0 | Ada, C, C++, Fortran, Obj-C, Obj-C++ | 9 (gdb, libassuan, libgcrypt, libgpg-error, libksba, libnpth, nsis, win-iconv, zlib) | |
Debian 11 (Bullseye) | 10.2.1/8.0.0 | ||||
Debian 12 (Bookworm) | 12.0.0/10.0.0 | ||||
Fedora |
Fedora 40 | 14.1.1/11.0.1 | Ada, C, C++, Fortran, Obj-C, Obj-C++ | many | |
Fedora 41 | 14.2.1/12.0.0 | ||||
LLVM-MinGW | 20240518 | Windows, Linux, macOS | LLVM 18.1.6/trunk | C, C++ | make, Python |
MacPorts |
Rolling | macOS | 14.2.0/12.0.0 | C, C++, Fortran, Obj-C, Obj-C++ | 1 (nsis) |
MinGW-W64-builds | Rolling | Windows | 13.1.0/11.0.0 | C, C++, Fortran | 4 (gdb, libiconf, python, zlib) |
MSYS2 |
Rolling | Windows | 14.2.0/trunk | Ada, C, C++, Fortran, Obj-C, Obj-C++, OCaml | many |
Ubuntu |
20.04 Focal Fossa | 9.3.0/7.0.0 | Ada, C, C++, Fortran, Obj-C, Obj-C++ | 9 (gdb, libassuan, libgcrypt, libgpg-error, libksba, libnpth, nsis, win-iconv, zlib) | |
22.04 Jammy Jellyfish | 10.3.0/8.0.0 | ||||
24.04 Noble Numbat | 13.2.0/11.0.1 | ||||
24.10 Oracular Oriole | 14.1.0/12.0.0 | ||||
w64devkit | 2.0.0 | Windows | 14.2.0/12.0.0 | C, C++, Fortran | 8 (busybox, cppcheck, ctags, gdb, make, nasm, pkg-config, vim) |
WinLibs.com | Rolling | Windows | 13.2.0 | Ada, C, C++, Fortran, Obj-C, Obj-C++, Assembler | Package manager: work in progress (will offer > 2500 packages) |
Arch Linux
Installation:
Cygwin
Cygwin is a Unix-like environment and command-line interface for Microsoft Windows. Its core is the cygwin1.dll library which provides POSIX functionality on top of the Win32 API. It can be used as a build environment which targets Windows directly and for which output doesn't depend on cygwin1.dll.
Installation is done through cygwin's package manager: setup.exe.
As part of the numerous packages in cygwin, there are cross-compilation toolchains which target both 32 bits and 64 bits; their names start with “mingw64-”.
Once they are installed, they should be used according to the general cross-compilation approach.
Debian
Installation: through integrated package manager.
Fedora
Installation: through integrated package manager.
LLVM-MinGW
LLVM-MinGW is a toolchain built with Clang, LLD, libc++, targeting i686, x86_64, arm and aarch64 (ARM64), with releases both for running as a cross compiler from Linux and for running on Windows. It supports Address Sanitizer, Undefined Behaviour Sanitizer, and generating debug info in PDB format.
Installation: GitHub
MacPorts
To install just the 32-bit or just 64-bit compiler with dependencies, use:
sudo port install i686-w64-mingw32-gcc
sudo port install x86_64-w64-mingw32-gcc
A shortcut to install both:
sudo port install mingw-w64
Here is the list of Mingw-w64 packages on MacPorts.
MinGW-W64-builds
Installation: GitHub
MSYS2
Installation: GitHub
Ubuntu
Installation: through integrated package manager.
w64devkit
w64devkit is a portable C and C++ development kit for x64 (and x86) Windows.
Included tools:
- Mingw-w64 GCC : compilers, linker, assembler
- GDB : debugger
- GNU Make : standard build tool
- busybox-w32 : standard unix utilities, including sh
- Vim : powerful text editor
- Universal Ctags : source navigation
- NASM : x86 assembler
- Cppcheck : static code analysis
The toolchain includes pthreads, C++11 threads, and OpenMP. All included runtime components are static.
Installation: GitHub
WinLibs.com
Standalone MinGW-w64+GCC builds for Windows, built from scratch (including all dependencies) natively on Windows for Windows.
Downloads are archive files (.zip
or .7z
). No installation is required,
just extract the archive and start using the programs in mingw32\bin
or mingw64\bin
.
This allows for a relocatable compiler suite and allows having multiple versions on the same system.
Also contains other tools including:
- GDB - the GNU Project debugger
- GNU Binutils - a collection of binary tools
- GNU Make - a tool which controls the generation of executables and other non-source files
- Yasm - The Yasm Modular Assembler Project
- NASM - The Netwide Assembler
- JWasm - A free MASM-compatible assembler
Flavors:
- separate packages for 32-bit (i686) and 64-bit (x86_64) Windows
- separate packages for MSVCRT and UCRT builds
- only POSIX threads builds (which also include Win32 API thread functions)
- exception model: Dwarf for 32-bit (i686) and SEH for 64-bit (x86_64)
Installation: Download from winlibs.com and extract archive (no installation needed).
Sources
Tarballs for the mingw-w64 sources are hosted on SourceForge.
The latest version from the 11.x series is 11.0.0.
The latest version from the 10.x series is 10.0.0.
The latest version from the 9.x series is 9.0.0.
The latest version from the 8.x series is 8.0.2.
The latest version from the 7.x series is 7.0.0.
The latest version from the 6.x series is 6.0.0.
The latest version from the 5.x series is 5.0.4.
The old wiki has instructions for building native and cross toolchains.
Details on how to get the mingw-w64 code from Git and an Git-web viewer are available on SourceForge.
Unsorted complementary list
Darwin/Mac OS X
The existing Darwin binaries have been built through buildbot in 2013 and links to them can be found on the dedicated page.
GCC with the MCF thread model
GCC with the MCF thread model is a series of
x86 and x64 native toolchains built by LH_Mouse. The MCF thread model has been
merged into GCC 13, and can be enabled by passing --enable-threads=mcf
to
GCC's configure script. C++11 threading facilities, such as std::thread
,
std::mutex
, std::condition_variable
, std::call_once
, thread_local
etc.
invoke the mcfgthread library, which
implements them on Windows syscalls in a more standard-compliant and more
efficient way, outperforming even native slim reader/write locks (SRW) since
Windows Vista.
OpenSUSE
The OpenSUSE Linux distribution also has a large and well-maintained set of packages for cross-compilation.
Rubenvb
Rubenvb has built a number of toolchains including some for less common setups. They are split into two categories: toolchains targeting Win32 or Win64.