Mingw что это за программа

MinGW — MinGW

эта статья слишком полагается на использованная литература к основные источники. Пожалуйста, улучшите это, добавив вторичные или третичные источники. ( Май 2012 г. ) (Узнайте, как и когда удалить этот шаблон сообщения)

GNU BinUtils — 2.32-1, Менеджер установки — 0.6.3, WSL — 5.2.1 [1] / 11 февраля 2019 г. ; 21 месяц назад ( 2019-02-11 )

MinGW («Минималистский GNU для Windows»), ранее mingw32, это бесплатный и открытый исходный код разработка программного обеспечения среда для создания Майкрософт Виндоус Приложения. Разработка проекта MinGW была раздвоенный с созданием в 2005–2008 гг. альтернативного проекта под названием Mingw-w64.

MinGW включает порт из Коллекция компиляторов GNU (GCC), GNU Binutils для Windows (ассемблер, компоновщик, менеджер архива ), набор свободно распространяемых Windows-специфичных файлы заголовков и статические библиотеки импорта которые позволяют использовать Windows API, собственная сборка Windows Проект GNU с Отладчик GNU, и разные утилиты.

Download, instalação e como utilizar o MingW — GCC para Windows

MinGW не полагается на сторонний C время выполнения библиотека с динамической компоновкой (DLL), и поскольку библиотеки времени выполнения не распространяются с использованием Стандартная общественная лицензия GNU (GPL), распространять исходный код с созданными программами, если где-либо в программе не используется библиотека GPL. [2]

MinGW может быть запущен либо на родной платформе Microsoft Windows, либо на кросс-хостинге Linux (или другой Unix), или «кросс-родной» на Cygwin. Хотя программы, созданные под MinGW, являются 32-битными исполняемыми файлами, их можно использовать как в 32-битных, так и в 64-битных версиях Windows.

  • 1 История
  • 2 Поддержка языков программирования
  • 3 Совместимость ссылок
  • 4 Компоненты
  • 5 Сравнение с Cygwin
  • 6 использованная литература
  • 7 внешние ссылки

История

Изначально MinGW назывался mingw32 («Минималистичный GNU для W32») в соответствии с соглашением GNU, согласно которому Windows сокращается как «W32». [3] [4] Цифры были опущены, чтобы избежать намека на то, что он будет ограничен производством 32-битные двоичные файлы. Колин Петерс является автором первого выпуска в 1998 году, состоящего только из Cygwin-порта GCC. [5] [6] Ян-Яап ван дер Хейден создал порт GCC для Windows и добавил binutils и сделать. [5] [6] Позже Мумит Хан взяла на себя разработку, добавив в пакет больше функций, специфичных для Windows, в том числе системные заголовки Windows от Андерса Норландера. [5] [6] В 2000 году проект был перенесен в SourceForge чтобы получить дополнительную помощь от сообщества и централизовать его развитие. [5] [6]

MinGW был выбран проектом месяца на SourceForge за сентябрь 2005 года. [6]

В 2007 году форк оригинального MinGW под названием Mingw-w64 появился для того, чтобы обеспечить поддержку 64-битных и новых API. С тех пор он получил широкое распространение и распространение.

COMO INSTALAR (MINGW) COMPILADOR DE C/C++ NO WINDOWS 10/11

MSYS (сокращение от «Minimal System») был представлен как Оболочка Борна система интерпретатора командной строки [7] с целью лучшей совместимости с собственным программным обеспечением Windows.

MSYS2 («минимальная система 2») — это дистрибутив программного обеспечения и платформа для разработки Майкрософт Виндоус, основанный на Mingw-w64 и Cygwin, который помогает развернуть код из Unix мир в Windows. [8]

В 2018 году, после разногласий с SourceForge по поводу администрирования его списков рассылки, MinGW перешел на OSDN. [9]

Поддержка языков программирования

Большинство языков, поддерживаемых GCC, также поддерживаются портом MinGW. К ним относятся C, C ++, Цель-C, Objective-C ++, Фортран, и Ада. Используются библиотеки времени выполнения GCC (libstdc ++ для C ++, libgfortran для Fortran и т. Д.). [ нужна цитата ]

MinGW по умолчанию ссылается на библиотеку компонентов ОС Windows MSVCRT, которая является библиотекой C, Visual C версия 6.0, связанная с (первоначальной целью была CRTDLL), которая была выпущена в 1998 году и поэтому не включает поддержку C99 функции или даже все C89. Хотя ориентация на MSVCRT приводит к появлению программ, для которых не требуется установка дополнительных распространяемых компонентов среды выполнения, отсутствие поддержки C99 вызвало проблемы с переносом, особенно если printf Рассматриваются спецификаторы преобразования стиля. Эти проблемы были частично устранены за счет реализации библиотеки совместимости C99, libmingwex, но необходимая обширная работа далека от завершения и, возможно, никогда не будет реализована полностью. [10] Mingw-w64 решает эти проблемы и обеспечивает полностью совместимую с POSIX функциональность printf.

Совместимость ссылок

Двоичные файлы (исполняемые файлы или библиотеки DLL), созданные с помощью различных компиляторов C ++ (например, MinGW и Visual Studio), как правило, не совместимы по ссылкам. Однако скомпилированный код C совместим по ссылкам. [11]

Компоненты

Проект MinGW поддерживает и распространяет ряд различных основных компонентов и дополнительных пакетов, включая различные порты Набор инструментов GNU, такие как GCC и binutils, переведены в эквивалентные пакеты. [12] [13] Эти утилиты можно использовать из Командная строка Windows или интегрированы в IDE. Пакеты могут быть установлены с помощью командной строки через mingw-get. [14]

MinGW поддерживает динамические библиотеки, названные в соответствии с .lib и .dll соглашения, а также статические библиотеки, следующие за lib .a соглашение об именах, распространенное в Unix и Unix-подобных системах.

Читайте также:
Blitz installer что это за программа на Андроид

Кроме того, компонент MinGW, известный как MSYS (минимальная система) предоставляет порты Windows для облегченного Unix-подобного оболочка окружающая среда, включая rxvt и выбор POSIX инструменты, достаточные для включения autoconf скрипты для запуска, [15] но он не предоставляет компилятор C или файловая система с учетом регистра. [16]

mingwPORTs являются дополнениями к коллекции программного обеспечения MinGW, внесенными пользователями. Вместо того, чтобы предоставлять эти «надстройки» в виде предварительно скомпилированных двоичных пакетов, они предоставляются в форме интерактивных Оболочка Борна сценарии, которые проводят конечного пользователя через процесс автоматической загрузки и исправления исходного исходного кода, а затем его сборки и установки. Пользователи, которые хотят создать любое приложение из mingwPORT, должны сначала установить MinGW и MSYS. [17]

Реализация системных заголовков Windows и статических библиотек импорта выпущена под разрешительная лицензия, [18] в то время как порты GNU предоставляются в рамках Стандартная общественная лицензия GNU. Бинарные загрузки как полного пакета MSYS, так и отдельных утилит MinGW GNU доступны с сайта MinGW.

Сравнение с Cygwin

Хотя и Cygwin, и MinGW могут использоваться для переноса программного обеспечения Unix в Windows, у них есть разные подходы: [19] Cygwin стремится предоставить полную POSIX слой, включающий полную реализацию всех основных системных вызовов и библиотек Unix. Совместимость считается более приоритетной, чем производительность. С другой стороны, приоритеты MinGW — простота и производительность. Таким образом, он не обеспечивает определенных POSIX API, которые нелегко реализовать с помощью Windows API, например вилка () , mmap () и ioctl () . [19] Приложения, написанные с использованием кросс-платформенный библиотека, которая сама была перенесена на MinGW, например SDL, wxWidgets, Qt, или GTK, обычно компилируются в MinGW так же легко, как и в Cygwin.

Программы Windows, написанные с помощью Cygwin, запускаются поверх авторское лево совместимость DLL которые должны распространяться с программой вместе с исходным кодом программы. MinGW не требует уровень совместимости, поскольку программы на основе MinGW компилируются с прямыми вызовами Windows API.

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

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

использованная литература

  1. ^«Загрузить список пакетов». osdn.net.
  2. ^»(MinGW на) MinGW». MinGW.org/wiki. 2008-07-07 . Получено 2013-10-16 .
  3. ^«Стандарты кодирования GNU». gnu.org. Фонд свободного программного обеспечения. 27 апреля 2013 г. 5.5 Переносимость между типами систем . Получено 1 июля, 2013 .
  4. ^Столмен, Ричард (2000-09-18). «Libtool Re: Назвать проект gnu-win32?». libtool (Список рассылки) . Получено 2013-05-21 .
  5. ^ абcd»История (MinGW)». MinGW.org . Получено 2012-07-09 .
  6. ^ абcdе»Проект месяца (sourceforge)». SourceForge.net. 2005-08-31 . Получено 2012-07-09 .
  7. ^»(wiki 🙂 MSYS». MinGW.org . Получено 2020-04-16 . MSYS, сокращение от «Minimal SYStem», представляет собой систему интерпретатора командной строки Bourne Shell.
  8. ^ MSYS2: официальная домашняя страница, репозиторий кода
  9. ^«Объявление о переходе на OSDN.net». sourceforge.net.
  10. ^»(MinGW И) C99″. MinGW.org/wiki. 2010-06-21.
  11. ^http://mingw.org/wiki/Interoperability_of_Libraries_Created_by_Different_Compiler_Brands
  12. ^»(MinGW) FAQ». MinGW.org . Получено 2012-07-09 .
  13. ^«MinGW — Минималистичный GNU для Windows». Sourceforge.net . Получено 2012-07-09 .
  14. ^«Установщик интерфейса командной строки MinGW» . Получено 14 июн 2012 .
  15. ^»(wiki 🙂 MSYS». MinGW.org . Получено 2016-02-18 .
  16. ^»(wiki 🙂 MSYS». MinGW.org . Получено 2016-02-18 . Распространенным заблуждением является то, что MSYS — это «UNIX в Windows», MSYS сам по себе не содержит компилятора или библиотеки C, [. ] и не предоставляет никаких специфических функций UNIX, таких как имена файлов с учетом регистра.
  17. ^»(вики 🙂 mingwPORT». MinGW.org . Получено 2012-07-09 .
  18. ^«(MinGW) Условия лицензирования». MinGW.org . Получено 2012-07-09 .
  19. ^ аб»(MinGW 🙂 О Cygwin». MinGW.org . Получено 2012-07-09 .

внешние ссылки

  • официальный сайт MinGW
  • официальный сайт Mingw-w64
  • официальный сайт MSYS2
  • 64-битный дистрибутив Nuwen MinGW — поддерживается Сотрудник Microsoft

Источник: wikinlu.ru

MinGW для Windows

MinGW — бесплатный инструмент с открытым исходным кодом для разработки Windows приложений, который включает в себя порт GNU Compiler Collection(GCC), GNU Binutils, набор свободно распространяемых Windows заголовочных файлов и статических библиотек, позволяющие использовать Windows API, GNU debugger и прочие утилиты. Приложение поддерживает и распространяет несколько различных ключевых компонентов и дополнительных пакетов, включая различные порты GNU toolchain, такие как GCC и binutils, переведённые в эквивалентные пакеты, и которые могут быть использованы из командной строки Windows или интегрированы в IDE. MinGW не нуждается в DLL-слое совместимости, и поэтому, если в программе не используется лицензия GPL, программы не обязательно распространять вместе с исходным кодом. Поддерживается большинство языков программирования, включая C, C++, Objective-C, Objective-C++, Fortran и Ada. Также используются библиотеки из GCC (libstdc++ for C++, libgfortran for Fortran и пр.).

ТОП-сегодня раздела «Компиляторы»

Visual Assembler Visual Assembler — эта программа написана для тех, кто программирует на ассемблере. Borland Tasm -.

Borland C++ Compiler 5.5.1 Borland C++ Compiler — Компилятор языка программирования Borland C++ 5.5 Комментарии излишни.

Bloodshed Dev-C++ 5 Beta 9.2 (4.9.9.2) Bloodshed Dev-C++ — Редактор и компилятор для написания программ на C++.

скачать MinGW

MinGW 0.6.2 beta 20131004-1 Бесплатная среда разработки родных приложений под Windows с открытым исходным кодом, которая.

Читайте также:
Blast для чего эта программа

скачать DecAPK

DecAPK 1.0 DecAPK — простой, но достаточно удобный декомпилятор приложений для ОС Android.

скачать Golden Studio

Golden Studio 4.5 Golden Studio — полноценная среда программирования, которая позволяет создавать exe программы на языке PHP с поддержкой GUI или без программирования.

Источник: www.softportal.com

MinGW

Скриншот приложения MinGW - №1

MinGW — в это приложение входит необходимый комплект инструментария для линковки и компилирования программ. MinGW для Windows – это набор приспособлений, который позволит разрабатывать программное обеспечения для создания приложений. Загрузить MinGW и использовать как компилятор разрешено бесплатно. У утилиты лицензия GNU GPL – открытое лицензионное соглашение.

Для компиляции указывают имя компилятора, имя исходного файла и с каким расширением и куда будет сохранён скомпилированный исполняемый файл. Такая программа запускается через строку команд.

Перечислим основные особенности

  • В программу включены дополнительные наборы утилит. Интегрирован пакет инструментария для старта скриптов.
  • В приложении доступны порты, полный набор MSYS и некоторые пакеты открыты для загрузки.
  • Установка компактна и не вызывает проблем.
  • Программа MinGW постоянно обновляется и совершенствуется.
  • Компиляция C++ кода и линковка медленны.
  • Код, сгенерированный приложением, запускается быстро.

Скачать бесплатно MinGW для компьютера без регистрации можно на нашем сайте.

Источник: freesoft.ru

Mingw что это за программа

Система MinGW [1] часто используется как среда для исполнения утилит, пришедших с платформы Unix — make, gcc, g++ и т. д. Они нужны в первую очередь для компилирования приложений на платформе Windows с помощью бесплатных сред разработки (Eclipse, Dev-Cpp, wxDev-C++ и другие).

Есть порты MinGW для 32-битной и для 64-битной версий Windows. Установка 64-битной версии имеет несколько не очень понятных опций настройки, которые специально рассмотрены в этой статье.

[Процесс установки MinGW-W64 по шагам]

1. [2] -> Download -> mingw-w64-install.exe, запустите.

2. На первом экране появится приветствие мастера установки, просто Кликните Next.

MinGW W64 install01

3. Затем появляется важный экран настройки, где нужно выбрать опции системы.

MinGW W64 install02

Architecture: i686 или x86_64. Выберите x86_64, если у Вас современный процессор Athlon или Intel. Если у Вас старый Pentium Pro, Pentium II или Pentium III, то выберите i686.

Threads: posix или win32. Здесь выбирается GCC Threading model. Что выбрать — единого мнения нет. Если Вам нужно портировать сложные многопоточные приложения из Linux или FreeBSD, то возможно Вам лучше подойдет posix. Я обычно выбираю win32.

Exception: dwarf, sjlj или seh. Это относится к методике обработки ошибок. Состав выпадающего списка зависит от предыдущих опций.

Dwarf-2 EH. Реализация для Windows сама по себе не разработана для работы в условиях исполнения 64-битны приложений Windows. В режиме win32 вызываемый обработчик исключения не может распространяться на код, не совместимый со стандартом dw2; это означает, что любое исключение, которое происходит через любые «чужие фреймы» non-dw2 приведет к отказу, включая системные DLL Windows и DLL, встроенные в Visual Studio. Раскручивание кода Dwarf-2 в gcc включает инспектирование сборки x86, и оно не может происходить без соответствующей отладочной информации dwarf-2.

SjLj, SetJump LongJump. Этот метод обработки исключений работает в большинстве случаев на обоих платформах win32 и win64, за исключением сбоев общей защиты (general protection faults). Поддержка структурированной обработки ошибок разработана для gcc с целью преодолеть недостатки dw2 и sjlj. На платформе win64, информация отката размещается в секции xdata и в .pdata (таблица описания функции) вместо стека. Для win32 цепочка обработчиков сохраняется в стеке, и нуждается в сохранении/восстановлении с помощью реально выполняющегося кода.

GCC поддерживает два метода обработки исключений (EH):

DWARF-2 (DW2) EH, который требует наличия в выполняемом коде отладочной информации DWARF-2 (или DWARF-3). DW-2 EH может привести к некоторому разрастанию размера исполняемого кода, потому что в код добавляется большие таблицы отката по содержимому стека.

SJLJ. Этот метод базируется на setjmp/longjmp (SJLJ). Он несколько медленнее, чем DW2 EH (влияет даже на нормальное выполнение, когда не срабатывают исключения), однако он может работать поверх кода, который не был скомпилирован GCC, или в котором нет информации о истории вызовов через стек (call-stack unwinding information).

Structured Exception Handling (SEH). Windows использует свой собственный механизм обработки исключений, известный как Structured Exception Handling (SEH). К сожалению, GCC пока его не поддерживает. Однако обещается, что для x64 в появится поддержка SEH начиная с версии GCC 4.8.

Exception handling models of GCC site:stackoverflow.com
C++ Exception Handling for IA-64 site:static.usenix.org
EH newbies howto gcc.gnu.org
MinGW 64 bit Exception handling: SJLJ, DWARF, and SEH site:qt-project.org

Я выбрал для своей установки вариант seh.

4. На этом шаге нужно просто выбрать каталог установки. Оставьте все по умолчанию.

MinGW W64 install03

5. Запустится процесс закачки, который займет некоторое время.

MinGW W64 install04

По окончании загрузки нажмите Next и после окончания копирования Finish.

MinGW W64 install05

Если Вы хотите, чтобы утилиты из каталога c:Program Filesmingw-w64x86_64-4.9.2-win32-seh-rt_v3-rev1mingw64bin запускались без ввода полного пути, то добавьте этот каталог в пути поиска (в переменную окружения %Path%).

[Ссылки]

1. Mingw-w64 — GCC for Windows 64 http://microsin.net/programming/pc/mingw-w64-install.html» target=»_blank»]microsin.net[/mask_link]

Mingw что это за программа

Рассмотрим создание первой простейшей программы на C++ с помощью компилятора g++ , который на сегодняшний день является одим из наиболее популярных компиляторов для C++, доступен для разных платформ и который распространяется в рамках пакета компиляторов GCC. Более подобному информацию о g++ можно получить на официальном сайте проекта https://gcc.gnu.org/.

Читайте также:
Что за программа неро старт Смарт

Набор компиляторов GCC распространяется в различных версиях. Для Windows одной из наиболее популярных версий является пакет средств для разработки от некоммерческого проекта MSYS2. Следует отметить, что для MSYS2 требуется 64-битная версия Windows 7 и выше (то есть Vista, XP и более ранние версии не подходят)

После загрузки запустим программу установки:

Установка пакета mingw-w64 и msys2 на Windows

На первом шаге установки будет предложено установить каталог для установки. По умолчанию это каталог C:msys64:

Установка компиляторов С++ MSYS2 на Windows

Оставим каталог установки по умолчанию (при желании можно изменить). На следующем шаге устанавливаются настройки для ярлыка для меню Пуск, и затем собственно будет произведена установка. После завершения установки нам отобразить финальное окно, в котором нажмем на кнопку Завершить

Установка компиляторов MSYS2 на Windows

После завершения установки запустится консольное приложение MSYS2.exe. Если по каким-то причинам оно не запустилось, то в папке установки C:/msys64 надо найти файл usrt_64.exe :

компиляторы MSYS2.exe на Windows

Теперь нам надо установить собственно набор компиляторов GCC. Для этого введем в этом приложении следующую команду:

pacman -S mingw-w64-ucrt-x86_64-gcc

Для управления пакетами MSYS2 использует пакетный менеджер Packman. И данная команда говорт пакетному менелжеру packman установить пакет mingw-w64-ucrt-x86_64-gcc , который представляет набор компиляторов GCC (название устанавливаемого пакета указывается после параметра -S ).

Установка компиляторов MSYS2 на Windows

и после завершения установки мы можем приступать к программированию на C++. Если мы откроем каталог установки и зайдем в нем в папку C:msys64ucrt64bin , то найдем там все необходимые файлы компиляторов:

Компилятор G++ на Windows

В частности, файл g++.exe как раз и будет представлять компилятор для языка С++.

Далее для упрощения запуска компилятора мы можем добавить путь к нему в Переменные среды. Для этого можно в окне поиска в Windows ввести «изменение переменных среды текущего пользователя»:

изменение переменных среды текущего пользователя в Windows

Нам откроется окно Переменныех среды:

Добавление G++ в переменные среды на Windows

И добавим путь к компилятору:

Определение пути к компилятору G++ в переменных среды на Windows

Чтобы убедиться, что набор компиляторов GCC успешно установлен, введем следующую команду:

gcc —version

В этом случае нам должна отобразиться версия компиляторов

Версия компиляторов MSYS2 GCC на Windows

Создание первой программы

Итак, компилятор установлен, и теперь мы можем написать первую программу. Для этого потребуется любой текстовый редактор для набора исходного кода. Можно взять распространенный редактор Visual Studio Code или даже обычный встроенный Блокнот.

Итак, создадим на жестком диске С папку для исходных файлов. А в этой папке создадим новый текстовый файл, который переименуем в hello.cpp . То есть по сути файлы исходного кода на С++ — это обычные текстовые файлы, которые, как правило, имеют расширение cpp .

Первая программа на С++

В моем случае файл hello.cpp находится в папке C:cpp.

Теперь определим в файле hello.cpp простейший код, который будет выводить строку на консоль:

#include // подключаем заголовочный файл iostream int main() // определяем функцию main < // начало функции std::cout // конец функции

Для вывода строки на консоль необходимо подключить нужный функционал. Для этого в начале файла идет строка

#include

Данная строка представляет директиву препроцессора, которая позволяет подключить библиотеку iostream. Эта библиотека нужна для вывода строки на консоль.

Далее идет определение функции main . Функция main должна присутствовать в любой программе на С++, с нее собственно и начинается выполнение приложения.

Функция main состоит из четырех элементов:

  • Тип возвращаемого значения . В данном случае это тип int . Этот тип указывает, что функция должна возвращать целое число.
  • Имя функции . В данном случае функция называется main.
  • Список параметров . После имени функции в скобках идет список параметров. Но в данном случае скобки пустые, то есть функция main не принимает параметров.
  • Тело функции . После списка параметров в фигурных скобках идет тело функции. Здесь и определяются собственно те действия, которые выполняет функция main.

В теле функции происходит вывод строки на консоль. Для обращения к консоли используется стандартный поток вывода std::cout . С помощью оператора

В конце осуществляем выход из функции с помощью оператора return . Так как функция должна возвращать целое число, то после return указывается число 0. Ноль используется в качестве индикатора успешного завершения программы.

После каждой инструкции в языке C++ ставятся точка с запятой.

Каждая строка снабжена комментарием. Все, что написано после двойного слеша // представляет комментарий. Комментарий не учитывается при компиляции приложения, и не является частью программного кода, а служат лишь для его описания. Комментарий позволяет понять, что делает программа.

Язык программирования С++ в Visual Studio Code

Теперь скомпилируем этот файл. Для этого откроем командную строку Windows и вначале с помощью команды cd перейдем к папке с исходным файлом:

cd C:cpp

Чтобы скомпилировать исходный код, необходимо компилятору gcc передать в качестве параметра файл hello.cpp:

g++ hello.cpp -o hello

Дополнительный необязательный параметр -o hello указывает, что скомпилированный файл будет называться hello.exe. Если не указать этот параметр, то файл будет называться по умолчанию — a.exe.

После выполнения этой команды будет скомпилирован исполняемый файл, который в Windows по умолчанию называется hello.exe. И мы можем обратиться к этому файлу, и в этом случае консоль выведет строку «Hello World!», собственно как и прописано в коде.

Источник: metanit.com

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru