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:
| Compiler | Sumber | Platform Utama | Lisensi |
|---|---|---|---|
| GCC (GNU Compiler Collection) | GNU Project | Linux, macOS, Windows (MinGW) | GPL |
| Clang (LLVM) | LLVM Project | macOS, Linux, Windows | Apache 2.0 |
| MSVC (Microsoft Visual C++) | Microsoft | Windows | Proprietary |
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++.
sudo apt update
sudo apt install -y build-essentialPada distribusi berbasis Red Hat/Fedora, paket compiler bernama Development Tools:
sudo dnf groupinstall -y "Development Tools"Pada Arch Linux dan turunannya:
sudo pacman -S --needed base-develVerifikasi GCC di Linux #
Setelah instalasi selesai, verifikasi versi compiler:
g++ --versionOutput yang Dihasilkan (contoh di Debian 14):
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.
xcode-select --installSetelah instalasi, g++ di macOS sebenarnya adalah alias ke Clang. Verifikasi dengan:
clang++ --versionOutput yang Dihasilkan (contoh di macOS 14):
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/binApple 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:
- Unduh installer dari https://visualstudio.microsoft.com/visual-cpp-build-tools/ .
- Jalankan installer, pilih Desktop development with C++.
- Tunggu instalasi selesai (butuh beberapa gigabyte ruang disk).
Verifikasi dari Developer Command Prompt for Visual Studio:
cl /BvOutput yang Dihasilkan (contoh):
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:
- Unduh MSYS2 dari https://www.msys2.org/ .
- Buka terminal MSYS2 UCRT64, lalu jalankan:
pacman -S --needed mingw-w64-ucrt-x86_64-gcc- Tambahkan path
C:\msys64\ucrt64\binke variabelPATHWindows.
Verifikasi dari PowerShell atau Command Prompt:
g++ --versionOutput yang Dihasilkan (contoh):
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:
#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:
g++ -std=c++17 -O2 -Wall -Wextra -o cek cek.cppJalankan binary hasil kompilasi:
./cekOutput yang Dihasilkan (pada sistem 64-bit):
Compiler bekerja dengan baik.
Ukuran int : 4 byte
Ukuran pointer: 8 bytePada 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:
| Gejala | Penyebab Umum | Solusi |
|---|---|---|
g++: command not found | Compiler belum ada di PATH | Tambahkan direktori bin ke PATH |
fatal error: iostream: No such file | Header C++ standar tidak terpasang | Pasang libstdc++-dev atau gcc-c++ |
cannot execute binary file | Arsitektur binary tidak cocok | Gunakan versi compiler sesuai arsitektur |
Permission denied saat eksekusi | File binary tidak punya bit eksekusi | chmod +x namafile di Linux/macOS |
Windows: cl is not recognized | Bukan Developer Command Prompt | Buka 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:
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) atauDevelopment 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.