Menu

Установка C++: настройка компилятора в Windows, macOS и Linux

Как установить компилятор C++ (GCC, Clang или MSVC), выбрать набор инструментов для своей операционной системы и убедиться, что он работает из командной строки.

На этой странице есть исполняемые редакторы: меняйте, запускайте и сразу видите результат.

Что вам действительно нужно: компилятор

На предыдущей странице вы видели, что C++ — компилируемый язык: ваш исходный код превращается в нативный машинный код ещё до запуска. Чтобы делать это на собственной машине, вы устанавливаете одну необходимую вещь — компилятор C++. Компилятор читает ваши файлы .cpp, применяет стандартную библиотеку C++ и создаёт исполняемый файл, который ваш процессор выполняет напрямую.

Вам не нужна тяжеловесная IDE, чтобы начать. IDE — это всего лишь редактор с обвязкой из инструментов поверх того же самого компилятора. Многие пишут C++ в обычном текстовом редакторе (или VS Code) и вызывают компилятор из терминала. Сначала установите компилятор; добавьте редактор сверху когда угодно.

Более того, ничего из этого не нужно, чтобы заниматься прямо здесь, — блоки редактора на этих страницах компилируются и запускаются в облаке. Настройте локальный компилятор, когда захотите собирать и запускать C++ на собственном компьютере.

Выберите компилятор под свою ОС

Существуют три основных компилятора C++ — все бесплатны и достаточно современны для C++17 и C++20:

  • GCC — GNU Compiler Collection. Его фронтенд для C++ — g++. По умолчанию в Linux.
  • Clang — компилятор LLVM. Его фронтенд для C++ — clang++. По умолчанию в macOS.
  • MSVC — компилятор Microsoft (cl.exe), поставляется с Visual Studio. Нативный выбор для Windows.

Не стоит переусердствовать с раздумьями. Используйте тот, что является стандартным для вашей платформы: язык C++ одинаков во всех трёх, и каждый пример из этого курса компилируется любым из них. Различия начинают иметь значение лишь когда вы доберётесь до продвинутых, специфичных для конкретного производителя возможностей.

Небольшая ловушка с именами: gcc и g++ оба входят в GCC, но для C++ всегда вызывайте g++ (а не gcc). g++ автоматически подключает стандартную библиотеку C++; gcc этого не делает, и вы получите запутанные ошибки компоновщика.

Установка на вашей платформе

Механика немного различается в зависимости от ОС. Там, где есть менеджер пакетов, предпочитайте его — обновления сводятся к одной команде.

Windows

Самый простой путь — бесплатный набор инструментов GCC MinGW-w64 через установщик MSYS2. После установки MSYS2 откройте его терминал и выполните:

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

Это даст вам g++. Затем добавьте C:\msys64\ucrt64\bin в ваш PATH, чтобы g++ работал из любого терминала. Как вариант, установите Visual Studio (бесплатную редакцию Community) с рабочей нагрузкой «Разработка классических приложений на C++», чтобы получить компилятор MSVC и IDE одним махом.

macOS

Apple поставляет Clang через Command Line Tools. Одна команда их устанавливает:

xcode-select --install

Это даст вам clang++. Если вы предпочитаете GCC, установите его через Homebrew: brew install gcc.

Linux (Debian/Ubuntu)

sudo apt update
sudo apt install g++

В Fedora/RHEL это sudo dnf install gcc-c++. Это команды оболочки, а не C++ — они устанавливают компилятор для всей системы. Установка пакета build-essential в Ubuntu подтягивает g++ вместе с make и другими инструментами сборки за один раз.

Проверьте, что всё получилось

Это тот шаг, который пропускают, а потом теряют на нём час. Откройте новый терминал (чтобы он подхватил обновлённый PATH) и спросите у компилятора его версию:

g++ --version

Вы должны увидеть что-то вроде:

g++ (Ubuntu 13.2.0-4ubuntu3) 13.2.0
Copyright (C) 2023 Free Software Foundation, Inc.

В macOS эквивалент — clang++ --version, а в Windows с MSVC — cl (запускается из «Developer Command Prompt»). Если вы получаете command not found, компилятор либо не установлен, либо не прописан в PATH — вернитесь к шагу установки для вашей платформы и заново откройте терминал.

Ещё одна полезная проверка: уточните, какой стандарт компилятор использует по умолчанию. Свежие GCC или Clang по умолчанию берут C++17 или новее — именно на это и рассчитаны эти страницы. Вы всегда можете явно задать стандарт флагом вроде -std=c++20, что подробно разбирает следующая страница.

Быстрый локальный тест

Как только g++ --version сообщает номер, ваша машина способна собирать C++. Та же самая программа, которую вы будете компилировать локально, запускается и прямо здесь, в браузере, так что вы можете проверить вывод ещё до того, как притронетесь к терминалу:

Макрос __cplusplus — это встроенное число, которое компилятор задаёт, чтобы сообщить, какой стандарт языка он использует (например, 201703 означает C++17). Любая программа на C++ начинается с int main(), а std::cout выводит данные в консоль. На собственной машине вы сохранили бы это как main.cpp, скомпилировали бы и запустили получившийся исполняемый файл. Этот двухшаговый танец «собрать, затем запустить» — ровно то, чему посвящена следующая страница.

Замечание о PATH

Чаще всего новые установки спотыкаются именно о PATH — список папок, в которых оболочка ищет программы. Если g++ --version запускается из любого каталога, значит ваш PATH включает папку компилятора и всё в порядке. Если он работает только из каталога установки или не работает вовсе, значит папка bin компилятора пока не в вашем PATH.

  • В Windows это самый частый камень преткновения: после установки MinGW-w64 нужно вручную добавить его папку bin в PATH и открыть новый терминал.
  • В macOS и Linux менеджеры пакетов и инструменты Xcode сами помещают компилятор в PATH, поэтому такое случается редко.

Если позже инструмент сборки или редактор не находит ваш компилятор, хотя g++ --version работает в терминале, почти всегда причина — PATH, который не унаследовало графическое приложение; перезапуск приложения (или машины) обычно решает проблему.

Далее: компиляция C++

Теперь у вас есть рабочий компилятор, проверенный из командной строки. Следующая страница превращает это в настоящий рабочий процесс: написать файл .cpp, скомпилировать его с помощью g++ (включая флаги -std и -o, управляющие стандартом и именем выходного файла) и запустить полученный исполняемый файл — а заодно разобраться, что на самом деле делает каждый шаг под капотом.

Часто задаваемые вопросы

Нужна ли мне IDE, чтобы начать писать на C++?

Нет. C++ нужен компилятор — IDE необязательна. Именно компилятор (g++, clang++ или cl из MSVC) превращает ваш исходный код в работающую программу; редактор вроде VS Code или IDE вроде Visual Studio лишь делают рабочий процесс удобнее. Сначала установите компилятор, а редактор добавьте, когда захотите.

Какой компилятор C++ мне установить?

Используйте стандартный для вашей ОС набор инструментов: GCC (g++) в Linux, Clang (clang++) в macOS через инструменты Xcode и MSVC или MinGW-w64 в Windows. Все три бесплатны и поддерживают современный C++17/C++20. Выберите один, добавьте его в PATH — и вы сможете компилировать любой пример из этого курса.

Как проверить, установлен ли уже компилятор C++?

Откройте терминал и выполните g++ --version (или clang++ --version). Если вы видите номер версии, компилятор есть в вашем PATH и готов к работе. Если вы получаете command not found, компилятор отсутствует или не прописан в PATH — установите набор инструментов для вашей платформы по инструкции ниже.

Coddy programming languages illustration

Учитесь программировать с Coddy

НАЧАТЬ