MinGW

MinGW
MinGW - Minimalist GNU for Windows
MinGW
Тип

компилятор

Разработчик

Colin Peters, Jan-Jaap van der Heijden, Mumit Khan, Anders Norlander, Earnie Boyd, Dale Handerson и др.

Операционная система

Microsoft Windows

Последняя версия

4.7.2 (05.11.2012)

Лицензия

GNU GPL

Сайт

www.mingw.org

MinGW (англ. Minimalist GNU for Windows), ранее mingw32, — нативный программный порт GNU Compiler Collection (GCC) под Microsoft Windows, вместе с набором свободно распространяемых библиотек импорта и заголовочных файлов для Windows API. MinGW позволяет разработчикам создавать нативные приложения Microsoft Windows[1]. В MinGW включены расширения для библиотеки времени выполнения Microsoft Visual C++ для поддержки функциональности C99[1].

Содержание

История

MinGW изначально назывался mingw32; цифры были отброшены, чтобы преодолеть заблуждение, что MinGW ограничен 32-битными системами[2]. Первый релиз, созданный Колином Петерсом (англ. Colin Peters) в 1998 году, включал в себя только порт GCC из Cygwin[3][4]. Нативный Windows-порт GCC, созданный Jan-Jaap van der Heijden и добавленные binutils и make[3][4]. Mumit Khan позже принял участие в разработке, добавив в комплект больше специфичных для Windows возможностей, включая заголовочные файлы Win32, написанные Anders Norlander[3][4]. В 2000 проект был перемещён на SourceForge.net, чтобы получить большую поддержку общественности и централизовать разработку[3][4].

В сентябре 2005 MinGW был выбран проектом месяца на SourceForge.net[4].

Компоненты MinGW

Проект MinGW поддерживает и распространяет несколько различных ключевых компонентов и дополнительных пакетов, включая различные порты GNU toolchain, такие как GCC и binutils, переведённые в эквивалентые пакеты[5][2]. Эти утилиты могут быть использованы из командной строки Windows или интегрированы в IDE.

В дополнение, компонент MinGW, известный как MSYS (Minimal SYStem) предоставляет win32-порты окружения легковесной Unix-подобной оболочки, включающей rxvt и набор инструментов POSIX, достаточный для запуска скриптов autoconf[6].

Реализации заголовочных файлов Win32 и библиотек импорта Win32 для связывания во время выполнения программы от начала до её завершения имеют либеральную лицензию[7], а порты GNU доступны под GNU General Public License. Бинарные сборки полного пакета MSYS и отдельных MinGW GNU утилит доступны для скачивания на сайте MinGW.

Сравнение с Cygwin

MinGW отделился от Cygwin 1.3.3. Несмотря на то, что и Cygwin, и MinGW используются для портирования программного обеспечения Unix под Windows, они используют разный подход[8]: цель Cygwin — предоставить полный слой POSIX (подобный тому, который находится в Linux и других Unix-системах) над Windows, жертвуя производительностью там, где это необходимо для совместимости. Соответственно, такой подход требует от Win32 программ, написанных с Cygwin, запуска поверх копилефтной библиотеки совместимости, которая должна распространяться с программой, а также с исходным кодом программы. Целью MinGW является предоставление нативной функциональности и производительности посредством прямых вызовов Windows API. В отличие от Cygwin, MinGW не нуждается в DLL-слое совместимости и, таким образом, программы не обязаны распространяться с исходным кодом.

Вследствие того, что MinGW использует вызовы Win32 API, он не может предоставить полного POSIX API; он не может скомпилировать некоторые приложения Unix, которые могут быть скомпилированы с Cygwin. В частности, это относится к приложениям, которые требуют такой функциональности POSIX, как fork(), mmap() или ioctl()[8] и предполагают запуск в среде POSIX. Приложения, написанные с использованием кроссплатформенных библиотек, таких, как SDL, wxWidgets, Qt или GTK+, как правило, легче компилируются в MinGW, чем в Cygwin.

Комбинация MinGW и MSYS предоставляет небольшую независимую среду, которая может быть загружена на съемные носители, не требуя добавления записей в файлы реестра. Cygwin, предоставляя бо́льшую функциональность, является более сложным для установки и поддержки.

Также возможна кросс-компиляция приложений Windows с MinGW-GCC под управлением операционных систем семейства POSIX. Это означает, что разработчику не нужно устанавливать Windows с MSYS, чтобы скомпилировать программы, которые будут запускаться под Windows без Cygwin.

Примечания

См. также

Ссылки


Wikimedia Foundation. 2010.

Игры ⚽ Нужно сделать НИР?

Полезное


Смотреть что такое "MinGW" в других словарях:

  • MinGW — Original author(s) Colin Peters Developer(s) MinGW Project Initial release 1 July 1998 Stable release 4.5.2 / January 12, 2011; 10 months ago ( …   Wikipedia

  • MinGW — Desarrollador Proyecto MinGW www.mingw.org Información general Diseñador Colin Peters La …   Wikipedia Español

  • MinGW — oder Mingw32 (Minimalist GNU for Windows) ist eine Softwareportierung der GNU Entwicklerwerkzeuge (GCC, GDB) auf die Windows Plattform, mit der man Programme für Windows entwickeln kann. MinGW entstand aus dem Cygwin Projekt heraus.[1] Es wird,… …   Deutsch Wikipedia

  • Mingw — oder Mingw32 (Minimalist GNU for Windows) ist eine Softwareportierung der GNU Entwicklerwerkzeuge (GCC, GDB) auf die Windows Plattform, mit der man Programme für Windows entwickeln kann. MinGW entstand aus dem Cygwin Projekt heraus. [1] Es wird,… …   Deutsch Wikipedia

  • Mingw — Développeur MinGW project Dernière version …   Wikipédia en Français

  • MinGW — Développeur MinGW project Dernière version …   Wikipédia en Français

  • MinGW — noun formerly called mingw32 …   Wiktionary

  • MINGW — Minimalist GNU for Windows (Computing » Software) …   Abbreviations dictionary

  • Mingw32 — MinGW oder Mingw32 (Minimalist GNU for Windows) ist eine Softwareportierung der GNU Entwicklerwerkzeuge (GCC, GDB) auf die Windows Plattform, mit der man Programme für Windows entwickeln kann. MinGW entstand aus dem Cygwin Projekt heraus. [1] Es… …   Deutsch Wikipedia

  • MSYS — MinGW MinGW Développeur MinGW project Dernière version …   Wikipédia en Français


Поделиться ссылкой на выделенное

Прямая ссылка:
Нажмите правой клавишей мыши и выберите «Копировать ссылку»