Compilare in Dos

Avevo già fatto un video su come compilare in Dos

Per prima cosa avete bisogno del compilatore: il modo più semplice è installare il DevC++ caricabile anche dal mio sito oppure da

Poi dovete o impostare una variabile ambiente fissa oppure anche settarne una momentanea. Questo vuol dire che dovete dirgli al computer dove si trova il compilatore. Si fa cosi ( per settare una variabile momentaneamente) Set path = percorso del compilatore che solitamente è il seguente ( se avete installato il Dev) C:\Program Files (x86)\Dev-Cpp\MinGW64\bin.

Una volta fatto questo potete verificare se la variabile ambiente è settata : scrivete g++ -v e dovrebbe darvi la versione del compilatore :

Ebbene ora scrivete ( con il block notes) il vostro primo programma e nominatelo primo.cpp

Salvate il tutto in una cartella e con il dos posizionatevi sulla cartella con il comando cd percorso….

Ora scrivete il comando di compilazione : g++ primo.cpp -o primo.exe

In realtà facendo quello che avete fatto si esegue la compilazione di un programma in C++ (spesso integrata in ambienti di sviluppo e quindi apparentemente trasparente ed uniforme) che segue le seguenti fasi :

  • Il codice sorgente viene controllato dal preprocessoreche ha i seguenti compiti:
    • rimuovere eventuali commenti presenti nel sorgente;
    • interpretare speciali direttive per il preprocessore denotate da “#“, come #include #define.
    • controllare eventuali errori del codice
  • Il risultato del preprocessore sarà un nuovo codice sorgente “pulito” ed “espanso” che viene tradotto dal compilatore C in codice assembly;
  • L’assembler sarà incaricato di creare il codice oggettosalvandolo in un file (.o sotto Unix/Linux e .obj in Dos/Windows);
  • Il Link editor ha il compito di collegare tutti i file oggetto risolvendo eventuali dipendenze e creando il programma (che non è altro che un file eseguibile).

Ricordiamo che tutte queste operazioni, per quanto molto avanzate, possono individuare facilmente errori di sintassi, ma mai e poi mai potranno trovare errori logici (come ad esempio un ciclo che non finisce), anche se spesso vengono segnalati dei Warning che non costituiscono errore, ma che segnalano parti di codice strane e quindi sulle quali porre attenzione per eventuali errori logici. Qui ci viene in aiuto il debugger che ha il compito di aiutare a gestire la correzione degli errori con svariati strumenti come i breakpoint ed i watchpoint.