好了,所以这是我的一个makefile当前设置。有哪些是命名public01.c
,public02.c
,等我试图让目标文件为他们每个人的使用public*.o
标签与通配符文件。Makefile文件和通配符
public*.o: public*.c hashtable.h
$(CC) $(CFLAGS) -c public*.c
public*: public*.o
$(CC) -o public* public*.o
然而,当我尝试运行makefile,我得到这个:
make: *** No rule to make target `public*.c', needed by `public*.o'. Stop.
我想这是治疗public*.c
作为标签,而不是因为我想一个通配符。我读了关于$(wildcard pattern...)
函数并玩过它,但我并没有真正理解它或让它工作...
+1,但并不需要'公共$ *。C','公共$ *。O'和'$公众*'的食谱,或者更好'$ <'和'$ @' ? – eriktous
@eriktous:哎呦,这是一个复制粘贴-O。现在修复,谢谢指出。 –