Mingw w64 как установить windows 10

Для работы над заданиями курса в Windows 10 рекомендуется использовать следующее программное окружение:

  • Редактор Visual Studio Code
  • Инструменты командной строки Git for Windows
  • Среда разработки MinGW-w64 (Minimalist GNU for Windows), содержащая компилятор GCC (GNU Compiler Collection)
  • Инструменты для сборки проектов CMake
  • Система управления пакетами python Miniconda3

Рассмотрим процесс установки и настройки этих инструментов.

Установка VS Code

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

Установка и настройка Git for Windows

Скачайте установочный файл Git for Windows со страницы загрузок и запустите его. На момент написания этого текста актуальной версией является 2.28.0. В процессе установки Вам будут заданы вопросы по конфигурации. В большинстве случаев подойдут рекомендуемые варианты.

Если в системе уже установлен редактор VS Code, то его можно выбрать в качестве редактора по умолчанию для Git:

git-setup-default-editor

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

git-setup-line-ending

Чтобы команды git были доступны во всех терминалах, следует выбрать рекомендуемый вариант для изменения переменной окружения PATH:

git-setup-PATH

Проверьте, что установка завершилась успешно, открыв терминал и исполнив команду git. Результат должен выглядеть так:

> git
usage: git [--version] [--help] [-C <path>] [-c <name>=<value>]
           [--exec-path[=<path>]] [--html-path] [--man-path]
           [--info-path] [-p | --paginate | -P | --no-pager]
           [--no-replace-objects] [--bare] [--git-dir=<path>]
           [--work-tree=<path>] [--namespace=<name>]
           <command> [<args>]

В качестве терминала в Windows 10 мы рекомендуем использовать PowerShell.

Теперь необходимо задать имя пользователя и адрес электронной почты:

> git config --global user.name "Ivan Petrov"
> git config --global user.email i.petrov@nsu.ru

Git хранит настройки в файле ~\.gitconfig. У автора этот файл выглядит следующим образом:

[user]
    email = vit.vorobiev@gmail.com
    name = Vitaly Vorobyev
[core]
    editor = \"[path-to-vscode]" --wait

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

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

Установочный файл MinGW-w64 mingw-w64-install.exe можно найти на этой странице. При установке не нужно менять настройки по умолчанию, кроме пути установки. Путь установки не должен содержать пробелов, поэтому путь по умолчанию в директории Program Files не подходит.

После завершения установки, в директории mingw32\bin будут расположены различные исполняемые файлы. Среди них нас интересует файл g++.exe, который запускает сборку программ C++. Сделаем так, чтобы этот файл был доступен в любой директории из командной строки. Если этого не сделать, то для использования команды g++ надо будет прописывать полный путь до файла g++.exe.

Откройте меню “Система” в “Панели управления”:

mingw-path-1

Из меню “Система” перейдите в “Дополнительные параметры системы”:

mingw-path-2

Выберите “Переменные среды”:

mingw-path-3

Выберите переменную Path и нажмите кнопку “Изменить…”:

mingw-path-4

Добавьте в новую строку полный путь до директории mingw32\bin и нажмите кнопку OK.

mingw-path-5

Чтобы проверить, что настройка выполнена успешно, откройте консоль (не в директории mingw32\bin) и выполните команду g++ --help:

> g++ --help
Usage: g++.exe [options] file...

Ваша система теперь готова к сборке программ на языке C++.

Установка CMake

Скачайте со станицы загрузок установочный файл cmake-3.18.1-win64-x64.msi (на момент написания текста актуальная версия — 3.18.1). Для 32-разрядной системы вместо этого нужно скачать файл cmake-3.18.1-win32-x86.msi. Запустите файл и выполните установку. В ходе установки выберите изменение переменной окружения PATH:

cmake-path

Выполните в консоли команду cmake --help для проверки корректности установки CMake:

> cmake --help
Usage

  cmake [options] <path-to-source>
  cmake [options] <path-to-existing-build>
  cmake [options] -S <path-to-source> -B <path-to-build>

Specify a source directory to (re-)generate a build system for it in 
the current working directory.  Specify an existing build directory to
re-generate its build system.

Код большинства заданий по C++ этого курса будет компилироваться с помощью CMake. Эта система значительно упрощает процесс сборки C++ проектов, особенно если они состоят из многих файлов.

Установка Miniconda3

Система Windows (в отличие от Linux) не имеет установленного по умолчанию интерпретатора python. Менеджер пакетов python Anaconda и его минимальная сборка Miniconda позволят нам установить в системы все необходимые инструменты для работы с python. Загрузите со страницы загрузки установочный файл Miniconda3 Windows 64-bit или Miniconda3 Windows 32-bit, в зависимости от разрядности системы. При установке отметьте галочку для добавления необходимых записей в переменную окружения PATH, несмотря на то что это действие не рекомендуется установщиком:

miniconda-path

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

>conda --help
usage: conda-script.py [-h] [-V] command ...

conda is a tool for managing and deploying applications, environments and packages.

Выполните инициализацию (необходимо выполнить один раз):

Создайте окружение для работы с заданиями этого курса:

>conda create -n nsu python=3

Conda вычислит набор пакетов, которые необходимо установить в новом окружении, и попросит подтвердить создание окружения:

После установки активируйте новое окружение и запустите консоль python:

>conda activate nsu
(nsu) >python
Python 3.8.5 (default, Aug  5 2020, 09:44:06) [MSC v.1916 64 bit (AMD64)] :: Anaconda, Inc. on win32
Type "help", "copyright", "credits" or "license" for more information.
>>>

Ваша система теперь готова для работы с заданиями курса “Программирование на C++ и python”. Нам осталось настроить редактор VS Code для максимально удобной работы.

Настройка VS Code

Установите следующие расширения VS Code:

  • C/C++ for Visual Studio Code
  • CMake Tools
  • Python

Выбор интерпретатора python

При начале работы с кодом python (при открытии файла с расширением .py) VS Code предложит выбрать интерпретатор python, который будет использоваться для подсветки кода, проверки синтаксиса и вывода подсказок:

vscode-python-interpreter

Можете, например, выбрать интерпретатор из недавно созданного окружения nsu.

Создадим файл test.py, содержащий одну строку:

Исполнить этот скрипт можно, открыв консоль в VS Code с помощью сочетания клавиш Ctrl+J и набрав в ней

В правом верхнем углу окна находится кнопка с зеленым треугольником ▷, нажатие на которую приводит к тому же результату:

vscode-python-hello-world

Настройка работы с GCC

Создайте файл test.cpp, содержащий следующий код:

#include <iostream>

int main() {
    std::cout << "Hello, world!" << std::endl;
    return 0;
}

Скомпилируем его с помощью компилятора GCC и командной строки. Откройте консоль в VS Code (Ctrl+J) и исполните команду

Компилятор создал исполняемый файл a.exe. Запустите его:

Работает. Настроим теперь VS Code для автоматизации этого действия. Выберите в меню пункт Terminal -> Configure Default Build Task...:

vscode-cpp-default-build-task

Выберите из выпавшего списка пункт g++.exe. В результате будет сгенерирован файл .vscode/tasks.json подобный такому:

{
    "version": "2.0.0",
    "tasks": [
        {
            "type": "shell",
            "label": "C/C++: cpp.exe build active file",
            "command": "D:\\mingw\\mingw32\\bin\\g++.exe",
            "args": [
                "-g",
                "${file}",
                "-o",
                "${fileDirname}\\${fileBasenameNoExtension}.exe"
            ],
            "options": {
                "cwd": "${workspaceFolder}"
            },
            "problemMatcher": [
                "$gcc"
            ],
            "group": {
                "kind": "build",
                "isDefault": true
            }
        }
    ]
}

Теперь при нажатии клавиш Ctrl+Shift+B или выборе пункта меню Terminal -> Run Build Task будет выполняться компиляция открытого файла. Для файла test.cpp будет создан исполняемый файл test.exe.

Работа с CMake

Откройте новую рабочую директорию VS Code, создайте в ней файл main.cpp, содержащий следующий код:

#include <iostream>

int main() {
    std::cout << "Hello, world!" << std::endl;
    return 0;
}

и файл CMakeLists.txt со следующим содержанием:

cmake_minimum_required(VERSION 3.0.0)
add_executable(test main.cpp)

Эти два файла составляют минимальный CMake-проект. Выполним сначала сборку CMake-проекта через консоль: создайте в рабочей директории поддиректорию build, в которой будет осуществляться сборка, и перейдите в неё:

Выполните настройку проекта и запустите сборку:

> cmake -G "MinGW Makefiles" ..
> cmake --build .

В первой команде мы указали, что сборка будет осуществляться с помощью MinGW и что файлы проекта расположены в родительской директории (путь ..). Вторая команда осуществляет сборку в текущей директории (путь .). В директории build должен появиться исполняемый файл test.exe.

Расширение VS Code для работы с CMake позволяет автоматизировать сборку проекта. Выберите рабочую директорию VS Code (комбинация клавиш Ctrl+K+O), содержащую файлы main.cpp и CMakeLists.txt. Наберите комбинацию клавиш Ctrl+Shift+P и в строке сверху наберите команду >CMake: Configure. Это запустит настройку инструментов CMake. После завершения настройки в нижней части окна появятся инструменты управления сборкой:

cmake-example-project

Кнопку “Сборка” запускает сборку, а кнопка ▷ — исполняемый файл.

Если автоматическая настройка CMake привела к ошибке, то, вероятно, инициализация CMake выполнилась без параметра -G "MinGW Makefiles". В этом случае выполните эту команду в консоли, как показано выше. Достаточно выполнить это действие один раз, после чего конфигурация этого и других проектов будет выполняться верно.

Работа с git

Покажем как можно работать с git-репозиторием через VS Code. Выполните fork репозитория задания Hello, Classroom на GitHub:

github-fork

Это действие создает новый репозиторий в Вашем аккаунте. Разрешите автоматическое тестирование решения, нажав на большую зеленую кнопку во вкладке Actions:

github-actions

Новый репозиторий необходимо клонировать на Вашу локальную систему. Удобнее всего это делать с помощью протокола ssh. Для этого сначала необходимо включить OpenSSH Client, который по умолчанию выключен.

Взаимодействие с GitHub репозиторием будет происходить по протоколу ssh с помощью техники шифрования с открытым ключом. Создать пару из приватного и публичного ключа можно в консоли:

>ssh-keygen
Generating public/private rsa key pair.

По умолчанию сгенерированные ключи будут расположены в директории ~\.ssh. Файл с публичным ключом называется id-rsa.pub. Публичный ключ нужно добавить на GitHub. Для этого откройте раздел SSH and GPG keys в меню Settings и нажмите на кнопку New SSH key:

github-ssh-key

Заполните открывшуюся форму. В поле Key нужно скопировать содержимое файла id-rsa.pub. Проследите, чтобы при копировании не появились лишние переносы строк. Весь ключ должен быть расположен в одной строке.

Теперь мы готовы к клонированию репозитория. Выберите на компьютере директорию, в которой Вы будете работать с заданиями курса и перейдите в неё. Откройте страницу репозитория hello-classroom в Вашем аккаунте GitHub и скопируйте строку для клонирования через ssh:

github-clone

Выполните в консоли команду git clone:

> git clone git@github.com:fakestud/hello-classroom.git
Cloning into 'hello-classroom'...
remote: Enumerating objects: 15, done.
remote: Counting objects: 100% (15/15), done.
remote: Compressing objects: 100% (8/8), done.
remote: Total 15 (delta 0), reused 15 (delta 0), pack-reused 0
Receiving objects: 100% (15/15), done

Строка git@github.com:fakestud/hello-classroom.git есть скопированная выше строка. Репозиторий был клонирован в директорию hello-classroom. Выберите её в качестве рабочей директории VS Code. Прочитайте файл README.md, содержащий инструкции по решению задания. После решения задания выполните локальную проверку:

> conda activate nsu
> pip install -r .\requirements.txt
> g++ -std=c++17 main.cpp -o a.out
> test_cmd tests/ .\a.out
Running 1 tests on 4 CPUs...

test1
Command: .\a.out
Success

All 1 tests passed.

Тесты пройдены успешны. Значит, мы готовы к синхронизации репозитория GitHub с нашей локальной версией. В командной строке для этого достаточно выполнить следующие команды:

git add main.cpp
git commit -m "Task solved"
git push -u origin master

Редактор VS Code позволяет выполнить эти действия через графический интерфейс. VS Code отслеживает изменения локальной версии репозитория. Откройте вкладку контроля версий слева и посмотрите на список изменившихся файлов. В нашем случае это должен быть только файл main.cpp. Выполните команду git add, нажав на кнопку +:

vscode-git-add

Затем команду git commit, нажав на кнопку ✓ и введя комментарий в текстовом поле:

vscode-git-commit

Наконец, выполните команду git push:

Источники

  • First-Time Git Setup
  • VS Code: User and Workspace Settings
  • VS Code: Using GCC with MinGW
  • VS Code: Get started with CMake Tools on Linux
  • Git in Visual Studio Code
  • Must-have плагины и несколько полезностей для С\С++ разработки в VS Code
  • Памятка пользователям ssh

MinGW (Minimalist GNU for Windows) is a development environment for Windows that includes a port of the GCC (GNU Compiler Collection) compiler. MinGW is commonly used to build open-source software for Windows. To install MinGW on Windows 10, follow the steps below:

Method 1: Download and Install MinGW

MinGW is a native Windows port of the GNU Compiler Collection (GCC), with freely distributable import libraries and header files for building native Windows applications.

Step 1: Download the MinGW Installer

Go to the MinGW website (https://sourceforge.net/projects/mingw-w64/files/mingw-w64/) and click on the «Download» button for the latest version of the MinGW installer.

Step 2: Run the MinGW Installer

After downloading the MinGW installer, run the executable file and follow the installation wizard.

Step 3: Select the Installation Options

During the installation process, you will be prompted to select the installation options. Select the following options:

  • Architecture: x86_64
  • Threads: posix
  • Exception: seh
  • Build revision: latest

Step 4: Set the Installation Directory

Set the installation directory to a location of your choice.

Step 5: Add MinGW to the System Path

After the installation is complete, add the MinGW bin directory to the system path by following these steps:

  1. Open the Start menu and search for «Environment Variables»
  2. Click on «Edit the system environment variables»
  3. Click on the «Environment Variables» button
  4. Under «System Variables», find the «Path» variable and click «Edit»
  5. Click «New» and add the path to the MinGW bin directory (e.g. «C:\MinGW\bin»)
  6. Click «OK» to save the changes

Step 6: Verify the Installation

To verify that MinGW is installed correctly, open a command prompt and type the following command:

This should display the version of the GCC compiler that is installed.

Method 2: Add MinGW to the System Path

Step 1: Download MinGW 64

Go to the MinGW-w64 website and download the latest version of MinGW 64 for your system.

Step 2: Install MinGW 64

Run the downloaded installer and follow the instructions. By default, MinGW 64 will be installed in C:\Program Files\mingw-w64\x86_64-8.1.0-posix-seh-rt_v6-rev0. You can change this location if you want.

Step 3: Add MinGW to the System Path

  1. Open the Start menu and search for «Environment Variables».
  2. Click on «Edit the system environment variables».
  3. Click on the «Environment Variables» button.
  4. Under «System Variables», scroll down and find the «Path» variable. Click on «Edit».
  5. Click on «New» and add the path to the MinGW 64 bin directory. By default, this is C:\Program Files\mingw-w64\x86_64-8.1.0-posix-seh-rt_v6-rev0\mingw64\bin.
  6. Click «OK» on all the windows to close them.

Step 4: Verify the Installation

Open a command prompt and type gcc --version. If MinGW 64 is installed correctly, you should see the version information for GCC.

$ gcc --version
gcc (MinGW.org GCC Build-2) 9.2.0

Step 5: Use MinGW 64

You can now use MinGW 64 to compile and run C and C++ programs. Here is an example:

#include <stdio.h>

int main() {
    printf("Hello, world!\n");
    return 0;
}

Save this code to a file named hello.c. Open a command prompt and navigate to the directory where hello.c is saved. Compile the code with the following command:

This will create an executable file named hello.exe. Run the program with the following command:

You should see the following output:

Method 3: Verify the Installation

Step 1: Download and Install MinGW 64

  1. Download the MinGW 64 installer from the official website: http://mingw-w64.org/doku.php/download
  2. Run the installer and select the following options:
    • Architecture: x86_64
    • Threads: posix
    • Exception: seh
    • Build revision: latest
    • Destination folder: choose a directory of your choice
  3. Click on «Next» and follow the on-screen instructions to complete the installation.

Step 2: Verify the Installation

  1. Open the Command Prompt by pressing the Windows key + R and typing «cmd» in the Run dialog box.

  2. Type the following command to check if MinGW is installed correctly:

    If MinGW is installed correctly, you should see the version number of the GCC compiler.

  3. Type the following command to check if the MinGW bin directory is added to the system path:

    If the MinGW bin directory is added to the system path, you should see the directory path in the output.

  4. Type the following command to compile a simple C program:

    This will compile the «hello.c» file and create an executable file named «hello.exe».

  5. Type the following command to run the executable file:

    If the program runs successfully and prints «Hello, World!» to the console, then MinGW is installed correctly and ready to use.

Cover image for How to install MinGW on Windows (10, 11)?

  1. First, let’s access the official MinGW website:
    mingw.org

  2. Now let’s go to the downloads tab, which is in the upper left corner:

Home page of mingw.org.

  1. On the download page choose option MingW-W64-builds:

download page

  1. Now click the direct link to github:

download page

  1. On the github page, choose the following option: x86_64-12.2.0-release-posix-seh-rt_v10-rev0.7z

GitHub page

Now you will download the file and unzip it using winrar (or any other file extraction tool).

After unzipping the file, go to the location where you unzipped it
and copy the path of the bin folder:

folder path

That done, to windows settings -> system -> about -> advanced system settings.

Click environment variables -> system variables -> path -> edit -> new -> paste the bin folder path you copied earlier.

Okay, now open your terminal (win + r) and type cmd and type the following command g++ --version, if everything went well, the g++ version will appear.

Многие разработчики программного обеспечения и любители программирования на языке C/C++ знакомы с инструментом MinGW. Однако, при переходе на новую версию операционной системы Windows 10 многие из них сталкиваются с проблемами установки данного инструмента. В этой подробной инструкции мы расскажем вам, как установить MinGW64 на Windows 10 без проблем.

MinGW (Minimalist GNU for Windows) — это набор бесплатных и открытых компиляторов, основанный на GNU Compiler Collection (GCC), который позволяет компилировать программы на языках C и C++. MinGW64 — это версия MinGW, адаптированная для 64-битных систем, таких как Windows 10. Установка MinGW64 на Windows 10 позволяет разрабатывать и компилировать программы на языках C и C++ на вашем компьютере.

Примечание: Прежде чем начать установку MinGW64 на Windows 10, убедитесь, что ваш компьютер имеет подключение к интернету и достаточно свободного места на диске.

Итак, переходим к установке MinGW64 на Windows 10. Шаг за шагом выполните следующие инструкции:

Содержание

  1. Вводная информация о Mingw64 на Windows 10
  2. Зачем нужна установка Mingw64 на Windows 10?
  3. Требования к системе для установки Mingw64 на Windows 10
  4. Загрузка и установка Mingw64 на Windows 10

Вводная информация о Mingw64 на Windows 10

Mingw64 позволяет создавать и собирать программы, написанные на языках C, C++ и Fortran, для Windows 64-бит. Mingw64 предлагает полный набор инструментов для разработки, включая компилятор, инструменты отладки и библиотеки.

Он является бесплатным и открытым ПО, и может быть использован как для коммерческих, так и некоммерческих проектов. Mingw64 позволяет разработчикам создавать приложения под Windows без использования платного компилятора Visual Studio.

Установка Mingw64 на Windows 10 позволяет вам разрабатывать кросс-платформенные приложения, которые могут быть запущены на различных операционных системах, включая Windows, Linux и macOS.

Зачем нужна установка Mingw64 на Windows 10?

  • Разработка и компиляция приложений на языке C или C++. Mingw64 предоставляет компиляторы и сопутствующие инструменты, которые позволяют разрабатывать и компилировать код на этих языках для операционных систем Windows.
  • Создание переносимого кода. Mingw64 позволяет создавать программы, которые могут быть запущены на различных операционных системах Windows без необходимости вносить изменения в исходный код.
  • Учебные цели. Установка Mingw64 на Windows 10 может быть полезна для студентов и людей, изучающих программирование на языке C или C++. Mingw64 предоставляет удобную среду для изучения и практической работы с этими языками.

В целом, установка Mingw64 на Windows 10 является необходимым шагом для разработчиков и программистов, которые хотят создавать или компилировать программы на языках C или C++ для операционных систем Windows.

Требования к системе для установки Mingw64 на Windows 10

Перед установкой Mingw64 на Windows 10 необходимо убедиться, что ваша система соответствует минимальным требованиям. Следующие требования должны быть выполнены:

1. Операционная система Windows 10: Mingw64 поддерживается только на компьютерах, работающих под управлением операционной системы Windows 10. Убедитесь, что у вас установлена последняя версия Windows 10 и в системе нет никаких ограничений, которые могут повлиять на установку и работу Mingw64.

2. Свободное место на жестком диске: Установка Mingw64 потребует некоторого дополнительного свободного места на вашем жестком диске. Рекомендуется иметь как минимум 1 ГБ свободного места для установки компилятора и связанных с ним компонентов.

3. Интернет-соединение: Для установки Mingw64 с помощью инсталлятора необходимо иметь активное интернет-соединение, так как компоненты Mingw64 будут загружены из Интернета. Если у вас нет постоянного доступа к Интернету, вы можете загрузить полный пакет установки Mingw64 с официального сайта и выполнить установку оффлайн.

4. Административные права: Для установки Mingw64 на Windows 10 вам потребуются административные права. Убедитесь, что у вас есть соответствующие права доступа, чтобы выполнить установку и внести необходимые изменения в системные файлы и настройки.

5. Отключение антивирусного ПО: Некоторые антивирусные программы могут заблокировать или прервать процесс установки Mingw64. Рекомендуется временно отключить антивирусное ПО или добавить исключения для файлов и папок Mingw64 перед установкой.

Если ваша система соответствует указанным требованиям, вы готовы к установке Mingw64 на Windows 10.

Загрузка и установка Mingw64 на Windows 10

Прежде чем начать установку Mingw64 на Windows 10, необходимо загрузить установочный файл с официального сайта. Воспользуйтесь следующими шагами:

  1. Откройте веб-браузер и перейдите на официальный сайт Mingw-w64 по адресу https://mingw-w64.org/doku.php.
  2. На главной странице найдите раздел «Downloads» и выберите архитектуру процессора вашего компьютера (x86 или x86_64) в зависимости от того, какая операционная система установлена на вашем компьютере.
  3. После выбора архитектуры, вас перенаправят на страницу загрузки. Среди предлагаемых вариантов найти и выберите установочный файл соответствующий вашему процессору.
  4. Скачайте установочный файл на ваш компьютер.

После загрузки установочного файла можно приступить к установке Mingw64:

  1. Откройте загруженный .exe-файл и следуйте инструкциям мастера установки, нажимая «Next» или «Далее» во время процесса установки.
  2. Выберите папку назначения, где будет установлен компилятор Mingw64. Рекомендуется оставить путь по умолчанию.
  3. Выберите компоненты, которые вы хотите установить. Оставьте все компоненты по умолчанию, так как они обеспечивают полноценную работу Mingw64.
  4. Выберите необходимую конфигурацию MinGW-w64. Рекомендуется выбрать «posix» в качестве системы ограничений и «seh» в качестве модели исключений.
  5. Нажмите «Install» или «Установить», чтобы начать установку.
  6. Дождитесь завершения установки Mingw-w64. Вам может потребоваться некоторое время, чтобы завершить процесс.
  7. По завершении установки нажмите «Finish» или «Готово».

Теперь Mingw-w64 установлен на вашем компьютере с операционной системой Windows 10. Вы можете использовать его для компиляции и запуска программ на языке C или C++. При возникновении проблем с установкой или использованием Mingw-w64 на Windows 10, обратитесь к официальной документации или сообществу разработчиков Mingw-w64.

In this tutorial ,

We will learn How to install 64 bit (GCC) GNU Compiler Collection (Mingw-w64 port) on a Windows 10 system using MSYS2 installer for C/C++ software development.

Content

  1. What is Mingw-w64
  2. What is MSYS2 
  3. Where to Download MSYS2 binary for Windows
  4. Installing MSYS2 on Windows
  5. Install GCC on Windows using Pacman 
  6. Compiling C/C++ file on Windows10 using GCC(Mingw-w64/MSYS2)
  7. Compiling Win32 API file using GCC(Mingw-w64/MSYS2)

installing gcc on windows 10 for native software development using mingw and msys2

GNU Compiler Collection (GCC) is an compiler produced by the GNU Project supporting various programming languages like for Objective-C, Objective-C++, Fortran, Ada, D and Go. Here we will be concentrating only C/C++ development on Windows 10.

GCC along with other utilities like  GNU Binutils for Windows (assembler, linker, archive manager),  set of freely distributable Windows specific header files and static import libraries have been ported to Windows platform and is available in the following flavors.

  • MinGW —  («Minimalist GNU for Windows») which can be used for creating 32 bit native executable on Windows platform
  • Mingw-w64 — 64bit 

Please note that we will not be covering WSL or Windows Subsystem for Linux.

What is Mingw-w64 

learn how to install Mingw-w64 on Windows 10 tutorial

Mingw-w64  is a fork off MinGW which provides a more complete Win32 API implementation including Win64 support,C99 support, DDK, DirectX.Mingw-w64 can generate 32 bit and 64-bit executables for x86 under the target names i686-w64-mingw32 and x86_64-w64-mingw32.

Here we will be using Mingw-w64 for C/C++ native application development using Windows API as most modern PC are now 64 bit.

Mingw-w64 Project does not provide any binaries for download from its website instead it maintains a list of Pre-built toolchains and packages provided by other vendors.

These  prebuilt toolchains contains GCC, Debugger ,Package Manager ,Terminals and a set of other Unix tools like curl, openssl, sed, awk etc which can be used for development on Windows Platform. 

available prebuilt tutorials of 64 bit mingw-w64 gcc ports for windows 10

Here we will be using a Mingw-w64 package called MSYS2 Software Distribution 

MSYS2 

learn how to install msys2 on windows 10 for win64 software development using GCC

MSYS2 is a collection of tools and libraries providing the developer with an easy-to-use environment for building, installing and running native Windows software.
MSYS2 Software Distribution consists of 

  • command line terminal called mintty, 
  • Bash, 
  • tools like tar and awk 
  • build systems like autotools, 

all based on a modified version of Cygwin. Despite some of these central parts being based on Cygwin, the main focus of MSYS2 is to provide a build environment for native Windows software and the Cygwin-using parts are kept at a minimum.

To install and remove various software packages internally  MSYS2 uses Pacman as their package manager.

MSYS2 is sponsored by Microsoft Open Source Programs Office through their  FOSS Fund.

  • Download MSYS2 Software Distribution (Mingw-w64) for Windows
  • Download extra MSYS2 Packages from Repo here 

Installing MSYS2 on Windows

Installing MSYS2 on Windows 10 is quite easy. Download the executable using the above link and run it

After the binary is installed on your system ,

MSYS2 comes with different environments/subsystems and the first thing you have to decide is which one to use.

The differences among the environments are mainly environment variables, default compilers/linkers, architecture, system libraries used etc.

If you are unsure, go with UCRT64.

MSYS2 environments/subsystems for windows development ucrt64 UCRT (Universal C Runtime)

UCRT (Universal C Runtime) is a newer version which is also used by Microsoft Visual Studio by default. 
It should work and behave as if the code was compiled with MSVC.

mintty terminal of msys2

You can start a terminal .The default terminal is Mintty (above)

Install GCC on Windows using Pacman on Windows 10 

MSYS2 on Windows 10 uses pacman as its package manager.

After installing MSYS2 ,you can check the installed packages by typing

$pacman -Q 

on the Mintty terminal.

checking installed gcc packages on windows 10 msys2 using pacman

This will list all the available packages on your system. 

GCC will not be installed by default, So you can go to the package repo and search for gcc.

installing gcc Mingw-w64 from msys2 repo on windows 10 using pacman

You can now use pacman to install gcc

$pacman -S gcc

installing gcc using pacman from msys2 repo on windows 10

After which you can check GCC by issuing the whereis command.

$whereis gcc

Compiling C/C++ file on Windows10 using GCC (MingW-w64/MSYS2)

First we will compile a simple c file using gcc.

Code below ,Save as main_c.c

#include<stdio.h>
int main()
{
  printf("Hello World");
  return 0;
}

Compile and run the code using the below commands

$ gcc -o main_c main_c.c
$ ./main_c

compiling c code on windows 10 using gcc (Mingw-W64) and msys2

Compiling a C++ code using GCC (MingW-w64/MSYS2)

Code below, Save as main_cpp.cpp

#include <iostream>
using namespace std;
int main()
{
    cout << "Hello from MSYS2\n!";
    cout << "Compiled C++ File\n!";
}

Compile and run the code using the below commands

$ g++ -o main_cpp main_cpp.cpp
$ ./main_cpp

compiling c++ code on windows 10 using gcc (Mingw-W64) and msys2

Compiling a Win32/64 API GUI C code using GCC (MingW-w64/MSYS2)

Now we will compile a Win32/64 GUI application using GCC (MingW-w64/MSYS2) on Windows 10 .

We will create a Window and a Message Box using Win32 native api and configure the gcc to compile and link to the native system API.

Copy the below code and save it as win.c 

#include<Windows.h>

int WINAPI WinMain(HINSTANCE hInstance,     //the instance of the program        
                      HINSTANCE hPrevInstance, //the previous instance 
                   LPSTR lpCmdLine,         //ptr to command line args
                   int nCmdShow)            //display properties
{
    HWND h;     
    h = CreateWindow("BUTTON",
                        "Hit me",
                        WS_OVERLAPPEDWINDOW,
                        350,300,250,100,0,0,
                         hInstance,0); //Create a window with BUTTON class
     
    ShowWindow(h,nCmdShow);   //show the window                                                
     MessageBox(0,"Press Me","Waiting",MB_OK); //used to display window                                                 
}

You can compile the Win32 API code on GCC using the following command

$ gcc -o win  win.c -Wl,--subsystem,windows  -lgdi32

$ ./win

Here

  • The -Wl,—subsystem,windows linker switch ensures that the application is built as a Windows GUI application, and not a console application. Failing to do so would result in a console window being displayed whilst your application runs

  • You should link with the gdi32 library using «lgdi32 » otherwise the code will complain about «undefined reference to GetStockObject«.

learn how to compile win32 API gui code using GCC (MingW-w64)and MSYS2

  • Minecraft windows 10 edition пробная версия
  • Minecraft preview for windows скачать
  • Mikrotik dhcp relay windows server dhcp
  • Microsoft средство восстановления windows 10
  • Mingw minimalist gnu for windows