2013-04-08 2 views
2

Je suis en train de compiler un exemple pthread, mais je reçois l'erreur suivante:Makefile pour pthreads

make: *** No rule to make target `example.cpp', needed by `example.o'. Stop. 

Ceci est mon makefile:

CC = g++ 
CCFLAGS = -Wall 

example: example.o 
     $(CC) $(CCFLAGS) -o example example.o -pthread 

example.o: example.cpp 
     $(CC) $(CCFLAGS) -c example.cpp -pthread 

clean: 
     - rm *.o 
     - rm example 

J'inclus le drapeau -pthread, je suis pas sûr de ce qu'il veut d'autre pour compiler. Quelqu'un a des idées? Merci beaucoup.

+3

Avant '$ (CC)', avez-vous des tabulations ou des espaces? –

+0

J'ai des onglets ici. – KateMak

+1

Si vous copiez-collez votre fichier makefile ici, alors vous n'avez pas d'onglet. –

Répondre

5

Comme il est dit, il n'y a pas example.cpp dans le répertoire courant.

Faites un ls dans le répertoire courant et postez ici.

+0

J'étais si fatigué quand j'ai posté ceci que je ne savais pas que j'ai eu exemple, pas example.cpp ...... merci !!! Je me sens vraiment lent maintenant, mais je suis vraiment content que ça a marché! – KateMak

0
+0

Avec MingW utilisant '-pthread' juste un avertissement, pas une erreur Cela produit-il une erreur dans les autres systèmes? –

+0

J'ai essayé d'utiliser -lpthread, i t n'a pas fonctionné = ( – KateMak

+0

bien il semble alors que le problème est dans le formatage makefile. je l'ai juste essayé en copiant pesting, mais j'ai eu la même erreur, puis j'ai essayé de réécrire la même chose, j'ai bien travaillé, make est très strict sur le formatage, peux-tu vérifier si tu ne remplaces pas les tabulations , vérifier http://stackoverflow.com/questions/8559033/make-no-rule-to-make-target-gcc-needed-by-all-stop – abasu