mingw-w64

GCC for Windows 64 & 32 bits

Mingw-w64

Mingw-w64 is an advancement of the original mingw.org project, created to support the GCC compiler on Windows systems. It has forked it in 2007 in order to provide support for 64 bits and new APIs. It has since then gained widespread use and distribution.

The development and community are very active and welcoming with new contributors every month and simple installers.

Version 5 has been released

v5.0.2: 2017-03-28

initial Release: 2016-10-19

  • Fixes to the __mingw_printf family of functions.
  • DirectX updates from Wine.
  • Various updates to support Windows 7 and 10.
  • Various header typo fixes.

You can also look at the full list of versions.

Headers, Libraries and Runtime

  • More than a million lines of headers are provided, not counting generated ones, and regularly expanded to track new Windows APIs.
  • Everything needed for linking and running your code on Windows.
  • Winpthreads, a pthreads library for C++11 threading support and simple integration with existing project.
  • Winstorecompat, a work-in-progress convenience library that eases conformance with the Windows Store.
  • Better-conforming and faster math support compared to Visual Studio's.

Tools

  • gendef: generate Visual Studio .def files from .dll files.
  • genidl: generate .idl files from .dll files.
  • widl: compile .idl files.

Friend projects

Mingw-w64 interacts a lot with other projects in order to help everyone move forward. Contributions have been going to and coming from these projects:

Most Recent Activity

Martin Storsjö committed [2db938]
19.08.2017

crt: Improve the cpp parameters for preprocessing def files

Doug Semler posted a comment on ticket #640
18.08.2017

Really, now who's the one making jokes? You do understand that there is MUCH more to the lexical analyzer and parser than pushing braces onto a stack as you go. That's not just wrong, it is way wrong and I would laugh at that naive implementation. If you really want to know more, take a look at the phase grammar in Annex A of the C standard. What's happening is that the grammar parser has gotten to a point where it is expecting a '}' before your else. That's where it stopped. That's all it knows....

Jim Michaels posted a comment on ticket #640
18.08.2017

no, this was not the case. the bracket checker is best implemented with a stack. I am not asking for help, just a compiler fix. that line was all that was wrong. it was 4000+-line complicated code. I ran it through my brace-checker.

Doug Semler posted a comment on ticket #652
16.08.2017

Oh, I know a patch would be welcome I put this in here so that it's actually known and tracked lol... I've narrowed it down to the fact that unless something from the libstdc++ header directory is included, nothing will unconditionally define __USE_MINGW_ANSI_STDIO as the one that is made in bits/os_defines.h via bits/c++config.h. Until and unless a C++ include is made __USE_MINGW_ANSI_STDIO is made based on the decision in _mingw.h. The only time __cplusplus has any effect in that decision in the...

niXman modified a comment on ticket #652
16.08.2017

gcc version 7.1.0 (i686-win32-sjlj-rev1, Built by MinGW-W64 project) so the v5 runtime I guess? (is there a way to find out the runtime release version out of curiosity???) yes, v5.x branch patches are welcom ;)

niXman posted a comment on ticket #652
16.08.2017

gcc version 7.1.0 (i686-win32-sjlj-rev1, Built by MinGW-W64 project) so the v5 runtime I guess? (is there a way to find out the runtime release version out of curiosity???) yes, v5.x branch

Doug Semler posted a comment on ticket #651
16.08.2017

I have to say...in my 25 years in this industry, this truely has to be one of the most useless "bug reports" I have ever seen. For all I know, this is floating point precision error, automatic casting conversion issues, or god knows what. Until and unless you can provide a test case that is repeatable and demonstrates the issue, this should be closed/invalid.

Doug Semler created ticket #652
16.08.2017

Include order affects selection of printf and __mingw_printf

Jim Michaels posted a comment on ticket #651
16.08.2017

it's a bug you can't nail down to a unit test, but in a complex program it will pop up and rear its ugly head. I got it in my test results of commercial code.

Jim Michaels created ticket #651
16.08.2017

iostream clog exponent sign not always correct