Premiers pas
Ce cours d’apprentissage du langage C nécessite une machine équipée avec :
un système d’exploitation Linux (Ubuntu ou équivalent) ;
le compilateur gcc ;
et l’environnement de développement VS Code.
Si la machine est équipée nativement d’un OS Linux ou MacOS, passer directement à l’étape 2.
1. Installer Linux sur une machine Windows
Sur une machine Windows, il faut installer WSL2, une architecture permettant de faire tourner un vrai noyau Linux. Cette solution est plus légère qu’une machine virtuelle VirtualBox ou VMware.
A faire…
Suivre toutes les étapes de ce tutorial pour installer WSL2/Ubuntu sur une machine Windows :
Configure Ubuntu. Il est efficace de choisir le même username/password que celui de votre compte ESIEE. Lorsque vous rentrez un mot de passe, le terminal n’affiche rien. C’est normal. Il faut taper le mot de passe normalement et valider avec la touche
Entrée
.
A l’issue de l’installation, la distribution Ubuntu apparait comme une application Windows dans le menu démarrer. Il suffira de lancer cette application pour démarrer un terminal Ubuntu.
Le terminal est un vrai terminal Linux qui permet d’installer des paquets, de compiler des programmes, etc…
Le système de fichiers Linux est accessible depuis Windows.
Réciproquement, le système de fichier Windows, est accessible depuis le terminal Ubuntu. Par exemple, le répertoire Windows C:\Users\user
est accessible via le répertoire Ubuntu /mnt/c/Users/user
.
L’étape suivante consiste à installer le compilateur gcc.
2. Installer le compilateur gcc
On suppose à partir de maintenant que l’on se trouve dans un environnement Windows WSL2/Ubuntu (les choses sont très similaires pour un environnement Linux natif).
Avertissement
Dans l’environnement MacOS, il faut installer XCode.
Dans un terminal, lancer la commande gcc --version.
Si le terminal affiche l’information demandée, le compilateur gcc
est déjà installé.
Si le terminal affiche une erreur, il faut installer gcc
avec:
$ sudo apt update
$ sudo apt install build-essential
A l’issue de cette opération, la commande gcc --version doit fonctionner:
$ gcc --version
gcc (Ubuntu 9.3.0-10ubuntu2) 9.3.0
Copyright (C) 2019 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.
3. Installer VS Code
S’il n’est pas déjà installé, l’étape suivante consiste à installer l’environnement de développement VS Code.
La procédure d’installation est décrite ci dessous en fonction du système d’exploitation natif :
On installera a minima l’extension C/C++ qui fournit une aide très utile (coloration syntaxique, auto complétion, formatage du code, etc…)
4. Un premier programme
Pour vérifier que la machine est correctement installée, on va dérouler le processus de création/compilation/exécution d’un programme minimal et vérifier son bon fonctionnement.
Pour la suite, on se place dans un environnement Windows WSL2/Ubuntu (un environnement différent n’induit que des modifications mineures dans ce qui va suivre).
On suppose qu’il existe un utilisateur Windows user
déclaré sur cette machine (dans les commandes ci dessous user
sera remplacé par votre propre nom d’utilisateur).
Avec l’explorateur de fichiers Windows, créer un répertoire de travail CoursC
sur le bureau.
Démarrer un terminal WSL2/Ubuntu, et se placer dans le répertoire de travail précédent:
$ cd /mnt/c/Users/user/desktop/CoursC
$ pwd
/mnt/c/Users/user/Desktop/CoursC
Ouvrir Visual Studio Code depuis le menu démarrer de Windows, puis se placer dans le répertoire de travail précédent avec File > Open Folder....
Créer un nouveau fichier hello.c
et y copier/coller le programme ci dessous:
1#include <stdio.h>
2
3int main(){
4 printf("Hello World !");
5 return 0;
6}
Créer un programme exécutable hello
avec la commande:
$ gcc -std=c99 -Wall -Wextra hello.c -o hello
Les options de compilation -std
, -Wall
, -Wextra
seront abordées ultérieurement.
La compilation doit se dérouler sans erreur et un fichier hello
doit se trouver dans le répertoire avec le fichier source hello.c
:
$ ls
$ hello hello.c
Lancer le fichier exécutable. La chaine de caractères Hello World !
doit s’afficher:
$ ./hello
Hello World !
La machine est maintenant correctement configurée pour démarrer le cours proprement dit.