


Comment compiler et lier plusieurs fichiers C dans un exécutable à l'aide de Makefiles ?
Oct 30, 2024 pm 10:07 PMCompilation et liaison de fichiers dans des Makefiles
La tâche mentionnée dans la question est de compiler plusieurs fichiers .cpp en fichiers objets .o, puis liez ces fichiers dans un binaire exécutable. Voici comment cela peut être réalisé à l'aide d'un Makefile :
Configuration du Makefile
1 2 3 4 5 6 7 8 9 10 11 12 13 |
|
Répartition du Makefile
- Le SRC_DIR et OBJ_DIR définissent respectivement les répertoires source et objet.
- SRC_FILES utilise la fonction générique pour rassembler tous les fichiers .cpp dans le SRC_DIR.
- OBJ_FILES transforme la liste SRC_FILES en les convertissant en objet chemins de fichiers dans OBJ_DIR.
- Les variables LDFLAGS, CPPFLAGS et CXXFLAGS contiennent respectivement tous les indicateurs supplémentaires qui doivent être transmis à l'éditeur de liens, au préprocesseur et au compilateur.
- Le main.exe target dépend de tous les fichiers .o et crée le binaire final.
- La règle pour compiler les fichiers .cpp en fichiers .o spécifie le compilateur à utiliser, ainsi que ses paramètres.
Gestion des dépendances (facultatif)
Pour automatiser la gestion des dépendances, ajoutez les lignes suivantes à la fin du Makefile :
1 2 |
|
Cela permet la génération automatique de règles Makefile qui suivent les dépendances entre les fichiers source et objet, simplifiant ainsi la maintenance.
Conclusion
Cette approche répond à l'exigence de compiler plusieurs fichiers .cpp et de les lier dans un binaire. Elle est également considérée comme une pratique standard et largement utilisée dans le développement de logiciels.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Article chaud

Outils chauds Tags

Article chaud

Tags d'article chaud

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Quels sont les types de valeurs renvoyées par les fonctions du langage C? Qu'est-ce qui détermine la valeur de retour?

C Fonction Langue Format de lettre ÉTAPES DE CONVERSION DE CAS

Gulc: Cibliothèque C construite à partir de zéro

Quelles sont les définitions et les règles d'appel des fonctions du langage C et quelles sont les

Utilisation distincte et partage de phrases

Comment fonctionne la bibliothèque de modèle standard C (STL)?

Où est la valeur de retour de la fonction de langue C stockée en mémoire?

Comment utiliser efficacement les algorithmes du STL (trier, trouver, transformer, etc.)?
