Maison >développement back-end >C++ >Comment compiler plusieurs fichiers C à l'aide de g : Makefile ou Single Command ?

Comment compiler plusieurs fichiers C à l'aide de g : Makefile ou Single Command ?

Linda Hamilton
Linda Hamiltonoriginal
2024-12-25 15:42:09740parcourir

How to Compile Multiple C   Files Using g  : Makefile or Single Command?

Compilation de plusieurs fichiers source et d'en-tête C à l'aide de G

Vous avez hérité d'une base de code C mal écrite qui comprend un seul fichier .cpp contenant le fonction principale et autre logique du programme, ainsi que plusieurs fichiers .h contenant des définitions de classe. Auparavant, le code était compilé à l'aide de la commande g main.cpp.

Comme vous avez maintenant séparé les classes en fichiers .h et .cpp individuels, vous devez déterminer si vous devez toujours utiliser un Makefile ou si vous pouvez continuer à utiliser la commande g main.cpp pour la compilation.

Pour compiler plusieurs fichiers sources à l'aide de g , vous pouvez simplement lister tous les fichiers .cpp que vous souhaitez inclure dans le programme, comme illustré ci-dessous :

g++ main.cpp other.cpp etc.cpp

Cette commande créera un fichier exécutable qui inclut le code de tous les fichiers source spécifiés.

Alternativement, vous pouvez d'abord compiler chaque fichier source individuellement dans des fichiers objets ( .o):

g++ -c main.cpp
g++ -c other.cpp
g++ -c etc.cpp

Ensuite, vous pouvez lier les fichiers objets entre eux pour créer le exécutable :

g++ main.o other.o etc.o -o executable_name

Le choix entre ces deux méthodes dépend de vos préférences et de la taille de votre base de code. Si vous disposez d’un petit nombre de fichiers sources, utiliser la commande unique g pour les compiler tous ensemble peut être plus pratique. Pour les bases de code plus volumineuses, l'utilisation d'un Makefile pour gérer le processus de compilation peut être plus efficace et aider à empêcher la recompilation de fichiers inchangés.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Article précédent:Pourquoi l'Ordre de `coutArticle suivant:Pourquoi l'Ordre de `cout