MinGW

From Wikipedia, the free encyclopedia

Jump to: navigation, search
MinGW
Developer MinGW project
Latest release 3.4.5 / 20 January 2006
Preview release 4.2.1 / 13 August 2007
OS Microsoft Windows
Genre Software development
License GNU General Public License
Website http://mingw.org/

MinGW is a software port of the GNU toolchain to Microsoft Windows. MinGW includes a set of header files (for the Windows API) which allows developers to use GCC, a free compiler, to create native Windows programs which do not rely on the presence of a runtime emulating Unix-like functionality like programs compiled with the Cygwin port.

The MinGW project maintains and distributes two main packages. The ported GCC compilers can be used from the Windows command line or integrated into an IDE. In addition, MSYS (minimal system) can also be used to provide a lightweight Unix-like shell environment including rxvt and a selection of POSIX tools sufficient to enable autoconf scripts to run.

Both packages were originally forks of the corresponding parts of Cygwin, which provides more comprehensive Unix-like support at the expense of native Windows functionality. Both packages are free software; the Win32 header files are released to the public domain, while the ports of GNU programs are available, naturally, under the GNU General Public License. Binary downloads of both the complete MSYS package and individual MinGW GNU utilities are available from the MinGW site.

Contents

[edit] Naming

The name MinGW stands for Minimalist GNU for Windows. MinGW is also referred to as Mingw32 because it provides headers for the Win32 API. No standard has been decided for the pronunciation of MinGW. Common pronunciations include "ming wee", "min gee double-u","ming double-u" or "min gnu".

[edit] Features

The combination of MinGW and MSYS provides a small, self-contained environment that can be loaded onto removable media without leaving entries in the registry or files on the computer. By providing more functionality, Cygwin becomes more complicated to install and maintain.

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 that will run on Windows without Cygwin.

[edit] Comparison with Cygwin

MinGW was a fork of version 1.3.3 of 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.

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] See also

[edit] References

[edit] External links

el:MinGW es:MinGW fr:MinGW ko:MinGW nl:MinGW ja:MinGW pl:MinGW pt:MinGW ro:MinGW ru:MinGW zh:MinGW

Views
Personal tools

Toolbox