Maison > développement back-end > C++ > Comment compiler plusieurs fichiers C avec g : Makefile ou Single Command ?

Comment compiler plusieurs fichiers C avec g : Makefile ou Single Command ?

Susan Sarandon
Libérer: 2024-12-31 14:57:11
original
1007 Les gens l'ont consulté

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

Compilation de plusieurs fichiers C avec G

Lorsque vous travaillez avec des projets C plus volumineux, il devient nécessaire d'organiser le code en plusieurs .cpp et .h fichiers. Cela peut conduire à des questions sur le processus de compilation, en particulier si le projet a été préalablement compilé comme une seule unité. Cet article explore les options disponibles pour compiler plusieurs fichiers C à l'aide de G .

Question : Après avoir séparé les classes C en fichiers .h et .cpp distincts, est-il toujours possible de les compiler à l'aide du g commande main.cpp, ou est un makefile obligatoire ?

Réponse :

L'utilisation de la commande g main.cpp n'est plus suffisante après avoir séparé les classes. Les options suivantes sont disponibles :

  • Compiler tous les fichiers CPP : Répertoriez tous les fichiers .cpp après le fichier main.cpp dans la commande, par exemple g main.cpp autre. cpp etc.cpp.
  • Compile individuellement : Compilez chaque fichier .cpp séparément dans fichiers objets (fichiers .o). Ensuite, liez les fichiers .o ensemble pour créer l'exécutable final.

Extrait de code pour la compilation de tous les fichiers CPP :

g++ main.cpp other.cpp etc.cpp -o executable
Copier après la connexion

Code Extrait de compilation individuelle et de liaison :

g++ -c main.cpp
g++ -c other.cpp
g++ -c etc.cpp
g++ main.o other.o etc.o -o executable
Copier après la connexion

Le choix entre le deux méthodes dépendent de la taille et de l’organisation du projet. Pour les petits projets, la compilation de tous les fichiers du RPC peut être plus facile. Pour les projets plus volumineux, la compilation individuellement et la liaison séparément offrent plus de flexibilité pour la compilation et le débogage incrémentiels.

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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal