1. MakeFile

1.1 Structuration :

cibles:prérequis

  commande

Compilation gcc 1.2 : -g, -o, -c, -D, -w, -W, -Wall, -O3

-c : les fichiers source sont compilés et assemblés, mais pas liés

Exemple:

gcc -c test.cpp -o test

-c suivi de plusieurs fichiers source

      Lorsque -c est suivi de plusieurs fichiers source, un fichier .o sera généré pour chaque fichier source , mais -o ne peut pas être utilisé pour le moment .

Lien de référence : Introduction aux options de compilation de gcc -o et -c_gcc -o_chengqiuming's Blog-CSDN Blog

1.3 Variables d'automatisation

variable d'automatisation

illustrer

$@

Indique le fichier objet

$ %

Lorsque le fichier cible est un fichier de bibliothèque statique, il représente un nom de membre de la bibliothèque statique.

$<

Indique le premier fichier dépendant.

$^

Représente tous les fichiers dépendants.

$ ?

Une liste de tous les fichiers dépendants plus récents que le fichier cible.

$+

Comme "$^", mais il préserve les occurrences en double des fichiers dépendants. Il est principalement utilisé dans l'occasion de référence croisée de la bibliothèque lorsque le programme est lié.

$*

Dans les règles de modèle et les règles de modèle statiques, signifie "tige". La "tige" est la partie représentée par le "%" dans le motif cible (lorsqu'un répertoire est présent dans le nom du fichier,

test:test.o test1.o test2.o

         gcc -o $@ $^

test.o:test.c test.h

         gcc -o $@ $<

test1.o:test1.c test1.h

         gcc -o $@ $<

test2.o:test2.c test2.h

         gcc -o $@ $<

L'ajout de caractères "D" ou "F" à ces variables dans GNU crée une série de variantes de variables d'automatisation pouvant opérer sur les noms de fichiers.

D représente la partie répertoire et F représente la partie fichier. Tels que : $(@D), $(@F)

1.4 Recherche de fichier objet

4.1 VPATH

VPATH := voiture src

test : test.o

    gcc -o $@ $^

Les fichiers du répertoire src sont recherchés en premier, puis les fichiers du répertoire car sont recherchés.

4.2 vpath

vpath test.c voiture src

Rechercher les fichiers test.c dans deux chemins

1.5 Faux objectifs

faire le ménage:

    test rm -rf *.o

Je suppose que tu aimes

Origine blog.csdn.net/qq_39825430/article/details/131982046
conseillé
Classement