Compilation en C

Qu'est-ce que la compilation ?

La compilation est le processus par lequel un programme écrit en C (code source) est traduit en langage machine (code machine), permettant ainsi à l'ordinateur de l'exécuter. Ce processus est essentiel pour transformer le code que nous écrivons en instructions que la machine peut comprendre.

Les étapes de la compilation d'un programme en C

La compilation d'un programme en C se déroule en quatre phases distinctes :

  1. Prétraitement
    C'est la première étape de la compilation. Lors du prétraitement :
  2. Les commandes qui commencent par # sont interprétées.
  3. Les commentaires sont retirés du code source.
  4. Les macros sont développées.
  5. Compilation
    À cette étape, le code prétraité est converti en code d'assemblage et les erreurs de syntaxe sont détectées par le compilateur.
  6. Assemblage
    Un assembleur est utilisé pour transformer le code d'assemblage en code objet (ou code machine).
  7. Édition des liens
    Il s'agit de la dernière étape, où tout le code objet des différents modules est fusionné (ou lié) pour créer une image exécutable qui est ensuite sauvegardée sur le disque, souvent sans extension de fichier (ex : hello), prêt à être exécuté par le processeur.

Commandes de compilation

Pour compiler un fichier, vous pouvez utiliser les commandes suivantes dans votre terminal :

// Cette commande compile hello.c, le résultat sera a.out
gcc -Wall hello.c

// Cette commande compile hello.c et nomme le fichier de sortie hello
gcc -Wall hello.c -o hello

Commande d'exécution

Pour exécuter un fichier compilé, utilisez :

// Charge et exécute le fichier hello
./hello

Une fois cette commande lancée, le fichier exécutable hello est chargé en mémoire et le processeur exécute le programme instruction par instruction.