Riepilogo
Questa lezione lascia installato e verificato l’ambiente con cui si lavorerà per tutto il corso. Spiega anzitutto che cosa si installa e perché: un compilatore, che è un programma a parte; un editor, Visual Studio Code, che lo invoca; la sua estensione ufficiale per C++; e il terminale, dal quale il compilatore si invoca senza intermediari. Offre poi una guida completa per ciascun sistema: su Windows, MSYS2 con l’ambiente UCRT64 e GCC, oppure il compilatore di Microsoft come alternativa; su macOS, gli strumenti da riga di comando di Xcode con Clang, oppure GCC di Homebrew se la versione di Apple non basta; su Linux, il GCC della distribuzione su Debian e Ubuntu, Fedora e Arch. Segue l’installazione dell’editor e della sua estensione, identica nei tre sistemi, e la configurazione della console di Windows perché scriva e legga testo in UTF-8. Termina con un programma di prova, che scrive una riga con accenti e lo standard di C++ che il compilatore applica, e con i malfunzionamenti frequenti dell’installazione, ciascuno con la sua causa e il suo rimedio.
Obiettivi di apprendimento
- Installare sul proprio sistema un compilatore con supporto per C++23 e verificarne la versione dal terminale.
- Installare Visual Studio Code e la sua estensione ufficiale per C++, e aprire con esso una cartella di lavoro.
- Compilare ed eseguire il primo programma di prova, dal terminale e dall’editor.
- Diagnosticare e risolvere almeno tre malfunzionamenti frequenti dell’installazione (compilatore non trovato, versione vecchia, standard non riconosciuto).
Che cosa si installa e perché
Nella lezione Programmi, compilatori e C++ si è visto che un programma scritto in C++ non si esegue così com’è scritto: un compilatore lo traduce in un eseguibile, un file con istruzioni macchina che il sistema operativo può avviare. Se è così, per programmare servono almeno due cose distinte: un luogo in cui scrivere il testo del programma e un traduttore che lo converta in eseguibile. La prima la fornisce un editor; la seconda, il compilatore. Sono programmi separati, che si installano separatamente e che possono guastarsi separatamente, e conviene non confonderli: l’editor non compila nulla, ma chiede al compilatore di compilare e mostra ciò che questo risponde.
Questa separazione ha una conseguenza pratica da cui dipendono tutte le guide di questa lezione. Quando l’editor «compila», in realtà scrive in un terminale un comando come g++ main.cpp -o main, proprio come potrebbe scriverlo lo studente. Ne segue che tutto ciò che fa l’editor si può fare anche a mano nel terminale, la finestra di testo in cui si scrivono comandi per il sistema operativo; e che, se l’editor fallisce, il terminale permette di capire se il difetto sta nell’editor o nel compilatore. Per questo il corso lavora con entrambi fin dal primo giorno: l’editor per comodità, il terminale per sapere che cosa succede.
I componenti da installare sono quattro.
- Il compilatore, con la sua libreria standard. Il corso usa lo standard C++23, sicché il compilatore deve riconoscerlo e la sua libreria deve includere l’header
<print>, che forniscestd::println. Si userà GCC (il cui comando per C++ èg++) su Windows e su Linux, e Clang (clang++) su macOS. Serve GCC 15 o successivo: l’header<print>è arrivato nella libreria di GCC con la versione 14, ma la scrittura di un’intera collezione constd::println, che il corso usa dalla lezione Programmi, compilatori e C++ e in molte lezioni successive, solo con la 15. Su macOS, gli strumenti di Xcode 16 o successivi. - L’editor: Visual Studio Code, gratuito e lo stesso programma nei tre sistemi, sicché le indicazioni del corso valgono per tutti.
- L’estensione ufficiale C/C++ di Microsoft per Visual Studio Code, che insegna all’editor il linguaggio: colora il codice, segnala gli errori mentre si scrive, completa i nomi e sa invocare il compilatore e il debugger.
- Il debugger, GDB su Windows e Linux, LLDB su macOS: un programma che permette di fermare l’esecuzione e osservare lo stato di un programma. Si installa ora insieme al compilatore e si userà dall’unità 4.
Le guide seguenti sono indipendenti: ogni studente segue quella del proprio sistema e passa poi alla sezione su Visual Studio Code. Nei blocchi di comandi, il segno $ all’inizio di una riga rappresenta il prompt del terminale e non si digita; le righe senza di esso sono ciò che il terminale risponde. I siti ufficiali citati sono gli unici da cui conviene scaricare: un installer ottenuto altrove può essere obsoleto o alterato.
Caricamento del contenuto…