MinGW
En Ar Bg De El Es Fa Fi Fr Hi Hu It Ja Kn Ko Ms Nl Pl Pt Ru Sq Th Tr Uk Zh
MinGW is a free and open source Windows port of the GCC compiler and related tools. Qt supports MinGW as a platform on Windows (in addition to the Visual Studio compiler by Microsoft). However, it can also be used as a cross-compiler e.g. on Unix (currently not officially supported).
Qt Creator supports compiling with a MinGW toolchain out of the box.
MinGW distributions and versions
There are actually different MinGW toolchains and packages available:
- MinGW is the original project. It only compiles for 32-bit binaries.
- MinGW-w64 is a fork with the original which also supports generation of 64-bit binaries. By now it also supports a much larger part of the Win32 API. The MinGW-w64 project does host several different binary packages, done by different people.
There are binary installers targeting MinGW for both Qt 4 and Qt 5. Up to Qt 4.8.6, Qt 4 ones are built with a MinGW toolchain using GCC 4.4. Newer Qt 4.8 binary packages ship with a MinGW-w64 based toolchain. For Qt 5, original MinGW toolchains are no longer supported.
Toolchains used in Qt binary packages
Common problems
Link error 'Undefined reference to _Unwind_Resume'
This error occurs if object files / libraries being linked are compiled with different versions of mingw. The following steps can fix a problem:
- Execute in order to remove all object files that was compiled with different mings versions.
mingw32-make distclean
- Explicitly set library path by setting environment variable, for example
LIBRARY_PATH. gcc linker have a very complicated library search algorithm[1] that can result in wrong library being linked (for example, mingw can find installation of strawberry perl in PATH and use it's library).set LIBRARY_PATH=c:\mingw\lib