Mingw-w64

Материал из IT в школе
Перейти к навигацииПерейти к поиску


MinGW-w64 - набор средств разработки для Windows, включает в себя компилятор GNU C/C++, отладчик gdb, профайлер gprof, системы сборки make и cmake и прочие утилиты комплекта GNU. MinGW расшифровывается, как Minimalistic Gnu for Windows. Проект отделился от проекта MinGW.

Сайт проекта: https://www.mingw-w64.org/

Установка mingw-w64

Существуют различные независимые сборки mingw-w64, большинство их которых распространяется в виде нескольких архивов, которые необходимо отдельно распаковывать. Разобраться в том, какие именно архивы нужно скачивать и распаковывать довольно сложно. Вариант установки с использованием exe-приложения, самостоятельно скачивающего нужные пакеты, к сожалению, содержит весьма устаревшую версию 8.1.0 компилятора.

Довольно простой способ установки (понадобится скачать только один архив) актуальной версии компилятора - это использование сайта winlibs.com.

Откройте этот сайт и перейдите к разделу "Download". Там будет довольно много разных ссылок на скачивание, расскажем как выбрать правильный архив, если вы не знаете в точности, что именно вам нужно.

Перейдите к разделу "Release versions" - "UCRT runtime". Выберите самую верхнюю версию MinGW в списке, она помечена, как LATEST. Вам нужна сборка с POSIX threads, версия для Win64. Если предлагаются варианты сборки с LLVM/Clang/LLD/LLDB, выберите вариант без (without) LLVM/Clang/LLD/LLDB (по крайней мере, если вы не знаете точно, что вам нужны именно LLVM/Clang/LLD/LLDB). Выберите zip-архив (если у вас установлен архиватор 7-zip, то можете скачать архив 7-zip, он меньше). То есть вам понадобится вот этот файл.

Выбор архива для скачивания mingw-w64 c winlibs.com

Прямая ссылка на скачивание архива с компилятором gcc 12.2.0 (последняя версия на февраль 2023): https://github.com/brechtsanders/winlibs_mingw/releases/download/12.2.0-15.0.7-10.0.0-ucrt-r4/winlibs-x86_64-posix-seh-gcc-12.2.0-mingw-w64ucrt-10.0.0-r4.zip

Внутри скачанного архива будет каталог mingw64. Распакуйте этот каталог на диск, лучше всего не использовать каталоги с пробелами или русскими буквами в именах (в том числе "Program Files"), поэтому лучше всего распаковать архив прямо в корень диска C:\. Далее будем считать, что у вас получился каталог C:\mingw64, внутри которого есть подкаталоги bin, include, lib, libexec, share и x86_64-w64-mingw32.

Добавление mingw-w64 в PATH

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

Вам необходимо открыть окно "Свойства системы" панели управления Windows. Для этого нужно открыть проводник, сделать правый клик мышью на "Этот компьютер", выбрать "Свойства". Появится окно "Система - О системе", в котором нужно кликнуть на "Дополнительные параметры системы".

Или можно сразу открыть окно "Свойства системы", если нажать на Win+R, в строку "Открыть" ввести команду sysdm.cpl, затем нажать Enter.

В окне "Свойства системы" выберите вкладку "Дополнительно" и нажмите на "Переменные среды...". Верхний список - это переменные среды для текущего пользователя, нижний список - системные переменные. В списке системных переменных выберите Path и нажмите на кнопку "Изменить"... Нажмите на кнопку "Создать", в списке появится новая строка. Нажмите на кнопку "Обзор" и выберите каталог C:\mingw64\bin (или подкаталог bin подкаталога mingw64, если вы распаковали его в другое место). Нажмите на OK, затем на OK, затем на OK.

Подробней про переменные среды и их изменение можно прочитать здесь.

Проверка работы компилятора

После распаковки архива и добавления MinGW-w64 в Path, запустите командную строку. Нажмите на Win+R и введите команду cmd, затем нажмите Enter.

Наберите команду g++. Вы должны увидеть сообщение "g++: fatal error: no input files compilation terminated". Наберите команду

g++ --version

Вы увидите сообщение с версией компилятора. Убедитесь, что версия соответствует той, которую вы скачали.

Пример вывода g++ из командной строки для проверки работы и версии компилятора