Menu

C++ 설치: Windows, macOS, Linux에서 컴파일러 설정하기

C++ 컴파일러(GCC, Clang, MSVC)를 설치하는 방법, 운영체제에 맞는 툴체인을 고르는 법, 그리고 명령줄에서 정상 동작하는지 확인하는 방법을 알아봅니다.

이 페이지에는 실행 가능한 에디터가 있습니다 - 편집하고 실행하면 결과를 바로 볼 수 있습니다.

실제로 필요한 것: 컴파일러

앞 페이지에서 C++가 컴파일 언어라는 것을 살펴봤습니다. 즉, 소스 코드는 실행되기 전에 네이티브 기계어로 변환됩니다. 이를 자신의 컴퓨터에서 하려면 꼭 하나만 설치하면 됩니다. 바로 C++ 컴파일러입니다. 컴파일러는 .cpp 파일을 읽고, C++ 표준 라이브러리를 적용하며, CPU가 직접 실행하는 실행 파일을 만들어 냅니다.

시작하는 데 무거운 IDE는 필요하지 않습니다. IDE는 같은 컴파일러를 바탕에 둔 편집기와 도구 묶음일 뿐입니다. 많은 사람이 평범한 텍스트 편집기(또는 VS Code)로 C++를 작성하고 터미널에서 컴파일러를 호출합니다. 먼저 컴파일러를 설치하고, 편집기는 원할 때 그 위에 얹으세요.

게다가 여기서 학습을 따라가는 데에는 이런 것이 전혀 필요 없습니다. 이 페이지들의 에디터 블록은 클라우드에서 컴파일되고 실행됩니다. 자신의 컴퓨터에서 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++라는 언어 자체는 셋 다 동일하고, 이 강좌의 모든 예제는 어느 것으로도 컴파일됩니다. 차이가 중요해지는 것은 고급의, 벤더별 기능에 이르렀을 때뿐입니다.

이름과 관련한 함정 하나: gccg++둘 다 GCC의 일부이지만, C++에서는 항상 **g++**를 호출하세요(gcc가 아닙니다). g++는 C++ 표준 라이브러리를 자동으로 링크하지만, gcc는 그렇지 않아 헷갈리는 링커 오류가 발생합니다.

플랫폼별 설치

세부 절차는 운영체제마다 조금씩 다릅니다. 패키지 관리자가 있는 경우 그것을 우선하세요. 업데이트가 명령어 하나로 끝납니다.

Windows

가장 간단한 길은 MSYS2 설치 프로그램을 통해 무료 MinGW-w64 GCC 툴체인을 쓰는 것입니다. MSYS2를 설치한 뒤 해당 터미널을 열고 다음을 실행하세요.

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

이렇게 하면 g++가 생깁니다. 그런 다음 어느 터미널에서나 g++가 동작하도록 C:\msys64\ucrt64\bin을 PATH에 추가하세요. 또는 MSVC 컴파일러와 IDE를 한 번에 얻으려면, "C++를 사용한 데스크톱 개발" 워크로드와 함께 Visual Studio(무료 Community 에디션)를 설치하세요.

macOS

Apple은 Command Line Tools를 통해 Clang을 제공합니다. 명령어 하나로 설치됩니다.

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++가 아니라 셸 명령으로, 컴파일러를 시스템 전체에 설치합니다. Ubuntu에서 build-essential 패키지를 설치하면 g++와 함께 make 등 다른 빌드 도구까지 한 번에 딸려 옵니다.

제대로 됐는지 확인하기

이 단계는 사람들이 건너뛰었다가 한 시간을 허비하게 되는 부분입니다. 터미널을 열어(갱신된 PATH를 반영하도록) 컴파일러에 버전을 물어보세요.

g++ --version

다음과 비슷한 출력이 보여야 합니다.

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

macOS에서의 대응은 clang++ --version이고, MSVC가 있는 Windows에서는 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에 직접 추가하고 새 터미널을 열어야 합니다.
  • macOSLinux에서는 패키지 관리자와 Xcode 도구가 컴파일러를 알아서 PATH에 넣어 주므로 이런 문제가 거의 생기지 않습니다.

나중에 빌드 도구나 편집기가, 터미널에서는 g++ --version이 동작하는데도 컴파일러를 찾지 못한다면, 원인은 거의 항상 GUI 앱이 물려받지 못한 PATH입니다. 앱(또는 컴퓨터)을 재시작하면 보통 해결됩니다.

다음: C++ 컴파일하기

이제 동작하는 컴파일러를 갖췄고 명령줄에서 확인했습니다. 다음 페이지에서는 이를 실제 작업 흐름으로 바꿉니다. .cpp 파일을 작성하고, g++로 컴파일하며(표준과 출력 이름을 제어하는 -std-o 플래그 포함), 만들어진 실행 파일을 실행합니다. 더불어 각 단계가 내부에서 실제로 무엇을 하는지도 살펴봅니다.

자주 묻는 질문

C++를 작성하기 시작하려면 IDE가 필요한가요?

아니요. C++에는 컴파일러가 필요하며, IDE는 선택 사항입니다. 소스 코드를 실행 가능한 프로그램으로 바꿔 주는 것이 바로 컴파일러(g++, clang++ 또는 MSVC의 cl)입니다. VS Code 같은 편집기나 Visual Studio 같은 IDE는 작업 흐름을 더 편하게 해 줄 뿐입니다. 먼저 컴파일러를 설치하고, 편집기는 원할 때 추가하면 됩니다.

어떤 C++ 컴파일러를 설치해야 하나요?

운영체제의 표준 툴체인을 사용하세요. Linux에서는 GCC(g++), macOS에서는 Xcode 도구를 통한 Clang(clang++), Windows에서는 MSVC 또는 MinGW-w64입니다. 셋 다 무료이며 최신 C++17/C++20을 지원합니다. 하나를 골라 PATH에 추가하면 이 강좌의 모든 예제를 컴파일할 수 있습니다.

C++ 컴파일러가 이미 설치되어 있는지 어떻게 확인하나요?

터미널을 열고 g++ --version(또는 clang++ --version)을 실행하세요. 버전 번호가 보이면 컴파일러가 PATH에 있어 바로 사용할 수 있습니다. command not found가 나오면 컴파일러가 없거나 PATH에 없는 것이니, 아래에서 사용 중인 플랫폼의 툴체인을 설치하세요.

Coddy programming languages illustration

Coddy로 코딩 배우기

시작하기