Sebelum kita bisa menulis dan menjalankan program C++, kita perlu memasang compiler yang sesuai dengan sistem operasi yang dipakai. Compiler adalah program yang menerjemahkan kode sumber C++ menjadi instruksi mesin yang dapat dieksekusi prosesor. Tanpa compiler, kode C++ hanyalah berkas teks biasa. Pada Chapter ini kita akan memasang compiler C++ di tiga sistem operasi populer — Linux, macOS, dan Windows — lalu memverifikasi instalasinya dengan mengompilasi program sederhana.

Pilihan Compiler C++ #

Tiga compiler utama yang dipakai industri dan komunitas:

CompilerSumberPlatform UtamaLisensi
GCC (GNU Compiler Collection)GNU ProjectLinux, macOS, Windows (MinGW)GPL
Clang (LLVM)LLVM ProjectmacOS, Linux, WindowsApache 2.0
MSVC (Microsoft Visual C++)MicrosoftWindowsProprietary

Ketiga compiler di atas mendukung C++17 dan C++20. Pilihan sering ditentukan oleh sistem operasi yang kita pakai: GCC di Linux, Clang di macOS, dan MSVC atau Clang di Windows. Untuk Course ini, contoh kode telah diuji dengan GCC 14.2.0, tetapi kompilasi dengan Clang atau MSVC seharusnya juga berhasil dengan perubahan kecil pada flag.

Instalasi GCC di Linux #

Pada distribusi berbasis Debian/Ubuntu (termasuk Linux Mint, Pop!_OS), GCC tersedia lewat paket build-essential. Paket ini mencakup gcc, g++, make, dan header standar C/C++.

bash
sudo apt update
sudo apt install -y build-essential

Pada distribusi berbasis Red Hat/Fedora, paket compiler bernama Development Tools:

bash
sudo dnf groupinstall -y "Development Tools"

Pada Arch Linux dan turunannya:

bash
sudo pacman -S --needed base-devel

Verifikasi GCC di Linux #

Setelah instalasi selesai, verifikasi versi compiler:

bash
g++ --version

Output yang Dihasilkan (contoh di Debian 14):

text
g++ (Debian 14.2.0-19) 14.2.0
Copyright (C) 2024 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Baris pertama menunjukkan versi GCC (14.2.0). Selama versi minimal 9.x, seluruh fitur C++17 yang dipakai Course ini didukung penuh.

Instalasi Clang di macOS #

Compiler default di macOS adalah Clang yang disediakan oleh Command Line Tools for Xcode. Kita tidak perlu memasang Xcode lengkap (yang berukuran gigabyte); cukup Command Line Tools.

bash
xcode-select --install

Setelah instalasi, g++ di macOS sebenarnya adalah alias ke Clang. Verifikasi dengan:

bash
clang++ --version

Output yang Dihasilkan (contoh di macOS 14):

text
Apple clang version 15.0.0 (clang-1500.3.9.4)
Target: arm64-apple-darwin23.6.0
Thread model: posix
InstalledDir: /Library/Developer/CommandLineTools/usr/bin

Apple Clang memiliki versi yang berbeda dengan Clang upstream LLVM. Walaupun begitu, dukungan C++17 dan C++20 sudah stabil.

Instalasi di Windows #

Ada beberapa opsi di Windows. Kita akan membahas dua yang paling umum: MSVC dan MinGW.

Opsi 1: Microsoft Visual C++ (MSVC) #

MSVC adalah compiler resmi Microsoft, dipasang bersama Visual Studio. Cara paling ringan adalah memasang Build Tools for Visual Studio tanpa IDE lengkap.

Langkah instalasi:

  1. Unduh installer dari https://visualstudio.microsoft.com/visual-cpp-build-tools/ .
  2. Jalankan installer, pilih Desktop development with C++.
  3. Tunggu instalasi selesai (butuh beberapa gigabyte ruang disk).

Verifikasi dari Developer Command Prompt for Visual Studio:

bash
cl /Bv

Output yang Dihasilkan (contoh):

text
Microsoft (R) C/C++ Optimizing Compiler Version 19.41.34120 for x64
Copyright (C) Microsoft Corporation.  All rights reserved.

Opsi 2: MinGW-w64 (GCC di Windows) #

MinGW-w64 menyediakan GCC native untuk Windows. Distribusi yang direkomendasikan adalah MSYS2, yang memungkinkan memasang GCC modern lewat package manager pacman.

Langkah instalasi:

  1. Unduh MSYS2 dari https://www.msys2.org/ .
  2. Buka terminal MSYS2 UCRT64, lalu jalankan:
bash
pacman -S --needed mingw-w64-ucrt-x86_64-gcc
  1. Tambahkan path C:\msys64\ucrt64\bin ke variabel PATH Windows.

Verifikasi dari PowerShell atau Command Prompt:

bash
g++ --version

Output yang Dihasilkan (contoh):

text
g++ (Rev2, Built by MSYS2 project) 14.2.0
Copyright (C) 2024 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Uji Kompilasi Program Pertama #

Setelah compiler terpasang, uji dengan program C++ sederhana. Buat berkas cek.cpp dengan teks berikut:

cpp
#include <iostream>

int main() {
    std::cout << "Compiler bekerja dengan baik.\n";
    std::cout << "Ukuran int   : " << sizeof(int) << " byte\n";
    std::cout << "Ukuran pointer: " << sizeof(void*) << " byte\n";
    return 0;
}

Lakukan kompilasi dari terminal yang berada di direktori berkas cek.cpp berada:

bash
g++ -std=c++17 -O2 -Wall -Wextra -o cek cek.cpp

Jalankan binary hasil kompilasi:

bash
./cek

Output yang Dihasilkan (pada sistem 64-bit):

text
Compiler bekerja dengan baik.
Ukuran int   : 4 byte
Ukuran pointer: 8 byte

Pada sistem 32-bit, baris ketiga akan menunjukkan 4 byte untuk pointer. Ini menunjukkan bahwa compiler bekerja dan menghasilkan binary yang sesuai dengan arsitektur mesin.

Troubleshooting Umum #

Beberapa masalah yang sering muncul saat instalasi:

GejalaPenyebab UmumSolusi
g++: command not foundCompiler belum ada di PATHTambahkan direktori bin ke PATH
fatal error: iostream: No such fileHeader C++ standar tidak terpasangPasang libstdc++-dev atau gcc-c++
cannot execute binary fileArsitektur binary tidak cocokGunakan versi compiler sesuai arsitektur
Permission denied saat eksekusiFile binary tidak punya bit eksekusichmod +x namafile di Linux/macOS
Windows: cl is not recognizedBukan Developer Command PromptBuka x64 Native Tools Command Prompt

Memverifikasi Dukungan C++17 #

Tidak semua compiler lama mendukung C++17 penuh. Berikut cara cepat memeriksa apakah compiler kita mendukung C++17:

bash
echo '#if __cplusplus < 201703L
#error Compiler tidak mendukung C++17
#endif
int main(){}' | g++ -std=c++17 -x c++ - -o /tmp/cpp17check 2>&1 && echo "OK: C++17 didukung"

Perintah di atas mengirim kode sumber lewat stdin ke g++. Jika kompilasi berhasil tanpa error, C++17 didukung. Tanda -x c++ memberi tahu compiler bahwa input adalah kode C++ meskipun berasal dari stdin.

Ringkasan #

Pada Chapter ini kita telah memasang compiler C++ di tiga sistem operasi:

  • Linux: GCC lewat paket build-essential (Debian/Ubuntu) atau Development Tools (Fedora).
  • macOS: Clang lewat xcode-select --install.
  • Windows: MSVC lewat Visual Studio Build Tools, atau MinGW GCC lewat MSYS2.

Compiler yang sudah terpasang memungkinkan kita menulis dan menguji kode sepanjang Course. Pada Chapter berikutnya kita akan mengonfigurasi editor (VS Code) agar mendukung autocomplete, debugging, dan build task yang memudahkan alur kerja.