MinGW , short for Minimalist GNU for Windows, provides a port of GCC to Microsoft Windows, along a shell and a collection of utilities that constitute a typical minimal environment in which to build software with GCC. A fork, Mingw-64, has pulled ahead in terms of providing more recent versions of GCC that target 64-bit Windows systems
MinGW ("Minimalistic GNU for Windows") refers to a set of runtime headers, used in building a compiler system based on the GNU GCC and binutils projects. It compiles and links code to be run on Win32 platforms... providing C, C++ and Fortran compilers plus other related tools. If you see references to "mingw32" instead of "MinGW", they are referring to the same compiler system. The project's name changed from mingw32 to MinGW is to prevent the implication that MinGW will only works on 32 bit systems (as 64 and higher bit machines become more common, MinGW will evolve to work with them). MinGW uses the Microsoft runtime libraries, distributed with the Windows operating system. Unlike other ports of GCC to Windows, the runtime libraries are not distributed using Gnu's General Public License (GPL). You, therefore, do not have to distribute your source code with your programs unless, of course, you use a GPL library in your programs.
Check out the project history for the interesting story of How MinGW Began: http://www.mingw.org/history .
The msys and mingw download should be used to compile Tcl/Tk sources on a Windows machine. A zip file containing all the needed software is available here:
The msys and mingw download available above has been tested with current releases of Tcl and Tk. It is the same software available from mingw.org, except that all the needed software has already been packaged into a single download.
See Building Tcl/Tk with Mingw for info about building Tcl/Tk with Msys and Mingw.
The precompiled ActiveTcl is a popular alternative to building yourself. As it is built with MSVC, there have been some questions about compatibility for extensions that want to build with mingw or cygwin.
Kevan Hashemi went to the effort of confirming the following using ActiveTcl 8.4.16 ...
I have three libraries (iocpsock, mine from Cygwin and mine from MinGW) and two TclTks (mine from MinGW and Active State's) and therefore six combinations. I tried them all, made some changes, and tried them again. I browsed the web.
My conclusions are these: