J'utilisais un Makefile du livre " Advanced Linux Programming (2001)" [code] . C'était étrange pour moi de voir que GNU make compilait le code correctement, sans même spécifier un compilateur dans le Makefile. C'est comme cuire sans aucune recette!
Ceci est une version minimale du code:
test.c
int main(){}
Makefile
all: test
et fait vraiment fonctionner! C'est la commande qu'il exécute:
cc test.c -o test
Je n'ai rien trouvé d'utile dans la documentation. Comment c'est possible?
PS Une note supplémentaire: Même la langue n’est pas spécifiée; Parce que test.cest disponible, GNU makeutilise cc. S'il existe test.cppou test.cc(quand il n'y en a pas test.c), il utilise g++(et non c++).
makevérifie votre réfrigérateur et découvre qu'il y a de la farine disponible, puis prépare un gâteau par défaut à partir de sa recette interne. :-)
makede faire bouillir de l'eau et qu'on utilise ses règles internesmakepour comprendre comment;)