Information

Author(s) François De Keersmaeker
Deadline No deadline
Submission limit No limitation

Sign in

Makefile simple

Les Makefiles sont des fichiers qui permettent d'automatiser la compilation de programmes. Ils sont appelés à l'aide de la commande make depuis un terminal, et définissent les règles de compilation nécessaires.

Pour en savoir plus, consultez la partie "Introduction aux Makefiles" dans la partie Outils du syllabus: https://sites.uclouvain.be/SystInfo/notes/Outils/make.html.

Les exercices suivants portent sur ce code C, présent dans un fichier nommé helloworld.c:

/**
 * helloworld.c
 * Prints "Hello world" on stdout.
 */

#include <stdio.h>

int main(int argc, char *argv[]) {
    printf("Hello world\n");
    return 0;
}

Question 1: Makefile

Fournissez le contenu d'un Makefile qui, lors d'un appel à la commande make, compile ce code C en un exécutable prog, et l'exécute.

La sortie standard doit uniquement afficher ce qui est écrit par le programme (pas les commandes effectuées par le Makefile).

Attention: vérifiez que chaque ligne d'une règle commence bien par une indentation, et pas une série d'espaces.

Question 2: Makefile propre

Fournissez le contenu d'un Makefile qui, lors d'un appel à la commande make, compile ce code C en un exécutable prog, et l'exécute. En plus, lors de l'appel à la commande make clean, les fichiers produits par la compilation et l'exécutable doivent être supprimés.

La sortie standard doit uniquement afficher ce qui est écrit par le programme (pas les commandes effectuées par le Makefile).

Attention: vérifiez que chaque ligne d'une règle commence bien par une indentation, et pas une série d'espaces.