2011-10-11 5 views
0
Hello: 
    g++ Hello.cc dep.o -o Hello 

dep.o: dep.cc dep.h 
     g++ -c dep.cc 

J'essaie ce fichier makefile, mais je veux que la cible soit "make Hello". Comment devrais-je modifier mon makefile? Cela fonctionne quand j'ai tapé "make".Comment créer une cible pour makefile

+0

Pour une raison quelconque, mon code n'apparaît pas correctement même après l'avoir modifié. – Mark

+0

FTFY. Les salutations sont filtrées dans des blocs de code: _) C'est un bug – sehe

+0

Quelle erreur obtenez-vous si vous tapez 'make Hello'? –

Répondre

2

Vous devez ajouter toutes les dépendances, récursive:

Hello: Hello.cc dep.o 
     g++ -o [email protected] $+ 

dep.o: dep.cc dep.h 
     g++ -c -o [email protected] $< 

Il serait sans doute préférable d'ajouter une étape de compilation séparée pour Hello.o, mais je vais rester avec le format prescrit par la question. Vous devez probablement également ajouter $(CXXFLAGS) et $(LDFLAGS) aux étapes de compilation et de liaison, respectivement, et remplacer g++ par $(CXX).

+0

Il se plaint de manque seperator - stop. – Mark

+0

Assurez-vous d'utiliser des onglets, pas des espaces! –

Questions connexes