minGW: “Pas de règle pour faire de cible”
Je me rends compte de ce type de question a été posée tout à l'heure, cependant j'ai cherché partout et je ne pouvais pas trouver une solution.
Je suis en train d'invoquer un makefile à l'aide de minGW l'utilitaire make, cependant je continuer à courir dans cette erreur:
D:\Aufgabe 4>mingw32-make-f
aufgabe4.faire
mingw32-make: * Pas de règle pour faire de ciblehalf_adder.o,', needed by
aufgabe4.out". Arrêter.'
C'est le contenu du fichier makefile:
aufgabe4.out : half_adder.o, adder.o, program.o
g++ -o aufgabe4.out half_adder.o adder.o program.o
half_adder.o: half_adder.h half_adder.cpp
g++ -c half_adder.cpp
adder.o: half_adder.h half_adder.cpp adder.h adder.cpp
g++ -c adder.cpp
program.o: half_adder.h adder.h program.cpp
g++ -c program.cpp
clean:
rm *.o aufgabe4.out
C'est le contenu de l'annuaire:
D:\Aufgabe 4>dir
Volume in drive D has no label.
Volume Serial Number is 6E0B-16A3
Directory of D:\Aufgabe 4
11/08/2011 12:29 PM <DIR> .
11/08/2011 12:29 PM <DIR> ..
11/08/2011 12:02 PM 381 adder.cpp
11/08/2011 11:52 AM 88 adder.h
11/08/2011 01:01 PM 346 aufgabe4.make
11/08/2011 11:56 AM 171 half_adder.cpp
11/08/2011 11:54 AM 78 half_adder.h
11/08/2011 12:15 PM 421 program.cpp
6 File(s) 1,485 bytes
2 Dir(s) 2,241,265,664 bytes free
Je vous serais reconnaissant de toute aide ou suggestion.
Merci.
- Est
adder.o
vraiment selonhalf_adder.cpp
? Siadder.cpp
ne comprend que l'half_adder.h
fichier, puis l' .fichier cpp n'est pas nécessaire dans la règle. - Oui, adder.cpp s'appuie sur les fonctions mises en œuvre dans half_adder.cpp. Je vais supprimer l' .fichier cpp de la règle, comme vous l'avez suggéré. Merci!
Vous devez vous connecter pour publier un commentaire.
Supprimer les virgules.
Supprimer "," de la première ligne de makefile.
La première ligne de votre fichier Makefile est mal écrit. Modifier pour cela:
Vous ne pouvez pas utiliser la virgule pour séparer les cibles. Utiliser les espaces.
Votre faire est probablement un GNU make, vous risquez de débogage à l'aide de
make --debug=b