MinGW
Z Wikipedii
MinGW (Minimalistic GNU for Windows) – darmowy, natywny kompilator dla platformy Windows.
Podstawowymi składnikami kompilatora MinGW są kompilator GCC, zestaw programów binutils (zawierający m.in. kompilator zasobów windowsowych windres) oraz zestaw plików nagłówkowych i bibliotek charakterystycznych dla platformy Windows. MinGW kompiluje kod źródłowy napisany w językach programowania C++, C, Fortran77, Java, Ada oraz Objective C do kodu wykonywalnego (EXE) lub, zależnie od potrzeb, plików obiektowych, bibliotek statycznych lub bibliotek dynamicznych (DLL). MinGW może kompilować większość programów przeznaczonych dla systemu Windows i wykorzystujących różne zaawansowane biblioteki, zarówno komercyjne, jak i typu Open Source, np. w32API, Qt, DirectX, OpenGL, SDL czy wxWidgets.
Programy skompilowane kompilatorem MinGW do komunikacji z systemem operacyjnym (np. w celu narysowania na ekranie przycisku) wykorzystują bezpośrednio standardowe biblioteki dynamiczne systemu Windows, np. kernel32.dll, gdi32.dll. Dlatego programy te wyglądają i zachowują się jak typowe aplikacje Windows, a pliki wykonywalne nie wymagają dołączania żadnych dodatkowych bibliotek dynamicznych specyficznych dla tego kompilatora. Jest to podstawowa cecha odróżniająca MinGW od kompilatora Cygwin.
Kompilator MinGW może być też używany do kompilowania i przenoszenia do systemu Windows bibliotek napisanych dla innych systemów operacyjnych, np. Linuksa, w tym bibliotek z projektu GNU. Ponieważ MinGW nie jest zgodny ze standardem POSIX, może nie kompilować programów pisanych dla tej platformy. Kompilacja programów lub bibliotek przy pomocy skryptu configure i/lub programu make wymaga doinstalowania pakietu MSYS (Minimal SYStem). Pakietu tego można też używać niezależnie od kompilatora MinGW jako alternatywy dla standardowej konsoli systemu Windows lub jako namiastki konsoli linuksowej. W szczególności MSYS udostępnia powłokę bash.
Kompilator MinGW charakteryzuje się niezwykle liberalną licencją typu Public Domain.
Ze względu na powyższe cechy, kompilator MinGW jest powszechnie wykorzystywany w niekomercyjnych zintegrowanych środowiskach programistycznych dla platformy Windows.