MinGW
From Wikipedia, the free encyclopedia
MinGW or Mingw32 (Minimalist GNU for Windows) is a software port of the GNU toolchain to the Win32 platform. MinGW includes a set of Windows header files (W32API) for native Win32 development. It was originally a fork of Cygwin (version 1.3.3).
No standard has been decided for the pronunciation of MinGW. Common pronunciations include "ming wee", "min gee double-u",[1] "ming double-u"[2] or "min gnu".
MinGW is often used together with MSYS (Minimal SYStem), another package based on Cygwin that provides a lightweight shell environment supporting enough POSIX functionality to enable configure scripts to run. It is also possible to use MSYS by itself as a replacement for the built-in Windows shell.
Contents |
[edit] Comparison with Cygwin
Although both Cygwin and MinGW are used to port Unix software to Windows, they have different approaches: Cygwin aims to provide a complete POSIX layer (similar to that found in a Linux or other Unix systems) on top of Windows, sacrificing performance where necessary for compatibility, while MinGW aims to provide only a free compiler and toolchain, prioritizing performance.
Unlike Cygwin, MinGW does not require a compatibility layer DLL and its runtime is licensed under a permissive license.
The combination of MinGW and MSYS provides a small, self-contained environment that can be loaded on to removable media without leaving entries in the registry or leaving files on the computer. By providing more functionality, Cygwin becomes more complicated to install and maintain.
Since MinGW does not provide a POSIX API, it is unable to compile some Unix applications that can be compiled with Cygwin. Specifically, this applies to applications that require specific POSIX functionality and those that expect to be run in a POSIX environment. Applications written using platform-independent libraries, such as SDL, wxWidgets, Qt, or GTK+ will usually compile as easily in MinGW as they would in Cygwin.
[edit] Cross compilation
It is also possible to cross-compile applications with MinGW. This means that developers do not need a Windows installation with MSYS to compile software for Windows.
[edit] References
- ^ Earnie Boyd - "Re: How do you pronounce MinGW?", December 18, 2002 post on mingw-users mailing list.
- ^ Soren Andersen - "Re: How do you pronounce MinGW?", December 18, 2002 post on mingw-users mailing list.
[edit] See also
- Code::Blocks
- Cygwin
- Dev-C++
- Xming
- UnxUtils, a collection of ports of common GNU UNIX-like utilities to native Win32.