Czego naprawdę potrzebujesz: kompilatora
Na poprzedniej stronie widać było, że C++ to język kompilowany: kod źródłowy jest zamieniany na natywny kod maszynowy przed uruchomieniem. Aby robić to na własnym komputerze, instalujesz jedną niezbędną rzecz: kompilator C++. Kompilator czyta pliki .cpp, dołącza bibliotekę standardową C++ i tworzy plik wykonywalny, który procesor uruchamia bezpośrednio.
Na start nie potrzebujesz ciężkiego IDE. IDE to po prostu edytor z narzędziami owiniętymi wokół tego samego kompilatora. Mnóstwo osób pisze w C++ w zwykłym edytorze tekstu (albo w VS Code) i uruchamia kompilator z terminala. Najpierw zainstaluj kompilator, a edytor dołóż, kiedy chcesz.
Żeby śledzić ten materiał, nic z tego nie jest potrzebne: bloki edytora na tych stronach kompilują się i uruchamiają w chmurze. Lokalny kompilator skonfiguruj wtedy, gdy zechcesz budować i uruchamiać C++ na własnym komputerze.
Wybierz kompilator dla swojego systemu
Są trzy popularne kompilatory C++, wszystkie darmowe i wystarczająco nowoczesne dla C++17 i C++20:
- GCC: GNU Compiler Collection. Jego front end dla C++ to
g++. Domyślny w Linuksie. - Clang: kompilator LLVM. Jego front end dla C++ to
clang++. Domyślny w macOS. - MSVC: kompilator Microsoftu (
cl.exe), dostarczany z Visual Studio. Natywny wybór w Windows.
Nie ma co się nad tym długo zastanawiać. Użyj tego, który jest standardem na twojej platformie: język C++ jest taki sam we wszystkich trzech, a każdy przykład z tego kursu kompiluje się w każdym z nich. Różnice mają znaczenie dopiero przy zaawansowanych funkcjach specyficznych dla danego dostawcy.
Szybka pułapka z nazwami:
gccig++należą oba do GCC, ale do C++ zawsze wywołujg++(niegcc).g++automatycznie linkuje bibliotekę standardową C++;gcctego nie robi i dostaniesz mylące błędy linkera.
Instalacja na twojej platformie
Szczegóły różnią się nieco między systemami. Jeśli masz menedżer pakietów, korzystaj z niego: aktualizacja staje się jednym poleceniem.
Windows
Najprostsza droga to darmowy zestaw narzędzi GCC MinGW-w64 przez instalator MSYS2. Po zainstalowaniu MSYS2 otwórz jego terminal i uruchom:
pacman -S mingw-w64-ucrt-x86_64-gcc
W ten sposób dostajesz g++. Następnie dodaj C:\msys64\ucrt64\bin do PATH, żeby g++ działało z każdego terminala. Możesz też zainstalować Visual Studio (darmową edycję Community) z pakietem „Desktop development with C++”, aby za jednym razem dostać kompilator MSVC i IDE.
macOS
Apple dostarcza Clang w ramach Command Line Tools. Instaluje je jedno polecenie:
xcode-select --install
W ten sposób dostajesz clang++. Jeśli wolisz GCC, zainstaluj go przez Homebrew: brew install gcc.
Linux (Debian/Ubuntu)
sudo apt update
sudo apt install g++
W Fedorze/RHEL to sudo dnf install gcc-c++. To polecenia powłoki, a nie C++: instalują kompilator w całym systemie. Pakiet build-essential w Ubuntu za jednym razem instaluje g++ razem z make i innymi narzędziami do budowania.
Sprawdź, czy zadziałało
To krok, który ludzie pomijają, a potem tracą przez to godzinę. Otwórz nowy terminal (żeby wczytał zaktualizowane PATH) i zapytaj kompilator o wersję:
g++ --version
Powinno pojawić się coś takiego:
g++ (Ubuntu 13.2.0-4ubuntu3) 13.2.0
Copyright (C) 2023 Free Software Foundation, Inc.
W macOS odpowiednikiem jest clang++ --version, a w Windows z MSVC to cl (uruchamiane z „Developer Command Prompt”). Jeśli dostajesz command not found, kompilator albo nie jest zainstalowany, albo nie ma go w PATH: wróć do kroku instalacji dla swojej platformy i otwórz terminal ponownie.
Jeszcze jedno przydatne sprawdzenie: jaki standard kompilator przyjmuje domyślnie. Aktualny GCC lub Clang domyślnie używa C++17 lub nowszego, i to właśnie zakładają te strony. Standard zawsze możesz wymusić jawnie flagą w rodzaju -std=c++20, co szczegółowo omawia następna strona.
Szybki test lokalny
Gdy g++ --version pokazuje numer, twój komputer potrafi budować C++. Dokładnie ten sam program, który skompilujesz lokalnie, działa też tutaj w przeglądarce, więc możesz sprawdzić wynik, zanim w ogóle dotkniesz terminala:
Makro __cplusplus to wbudowana liczba, którą kompilator definiuje, żeby powiedzieć, jakiego standardu języka używa (na przykład 201703 oznacza C++17). Każdy program w C++ zaczyna się od int main(), a std::cout wypisuje na konsolę. Na własnym komputerze zapisałoby się to jako main.cpp, skompilowało i uruchomiło powstały plik wykonywalny. Ten dwuetapowy taniec, najpierw budowanie, potem uruchomienie, jest tematem następnej strony.
Kilka słów o PATH
Jedyna rzecz, o którą często potykają się nowe instalacje, to PATH: lista folderów, w których powłoka szuka programów. Jeśli g++ --version działa z dowolnego katalogu, PATH zawiera folder kompilatora i wszystko gotowe. Jeśli działa tylko z katalogu instalacji albo wcale, folder bin kompilatora nie jest jeszcze w PATH.
- W Windows to najczęstsza przeszkoda: po zainstalowaniu MinGW-w64 musisz ręcznie dodać jego folder
bindo PATH i otworzyć nowy terminal. - W macOS i Linuksie menedżery pakietów i narzędzia Xcode same umieszczają kompilator w PATH, więc ten problem pojawia się rzadko.
Jeśli narzędzie do budowania albo edytor nie może później znaleźć kompilatora, choć g++ --version działa w terminalu, przyczyną jest niemal zawsze PATH, którego aplikacja z interfejsem graficznym nie odziedziczyła: ponowne uruchomienie aplikacji (albo komputera) zwykle to naprawia.
Dalej: kompilacja C++
Masz teraz działający kompilator sprawdzony z wiersza poleceń. Następna strona zamienia to w prawdziwy sposób pracy: pisanie pliku .cpp, kompilowanie go przez g++ (łącznie z flagami -std i -o, które ustalają standard i nazwę wyniku) i uruchamianie powstałego pliku wykonywalnego, a do tego wyjaśnia, co każdy krok faktycznie robi pod spodem.
Najczęściej zadawane pytania
Czy do pisania w C++ potrzebuję IDE?
Nie. C++ potrzebuje kompilatora, a IDE jest opcjonalne. To kompilator (g++, clang++ albo cl z MSVC) zamienia kod źródłowy w działający program; edytor taki jak VS Code czy IDE takie jak Visual Studio tylko uprzyjemniają pracę. Najpierw zainstaluj kompilator, a edytor dodaj, kiedy zechcesz.
Jaki kompilator C++ zainstalować?
Użyj standardowego zestawu narzędzi dla swojego systemu: GCC (g++) w Linuksie, Clang (clang++) w macOS przez narzędzia Xcode oraz MSVC albo MinGW-w64 w Windows. Wszystkie trzy są darmowe i obsługują nowoczesne C++17/C++20. Wybierz jeden, dodaj go do PATH i skompilujesz każdy przykład z tego kursu.
Jak sprawdzić, czy kompilator C++ jest już zainstalowany?
Otwórz terminal i uruchom g++ --version (albo clang++ --version). Jeśli widzisz numer wersji, kompilator jest w PATH i gotowy do użycia. Jeśli dostajesz command not found, kompilatora brakuje albo nie ma go w PATH: zainstaluj zestaw narzędzi dla swojej platformy według instrukcji poniżej.