如何将全部规则添加到此Makefile?

如何将全部规则添加到此Makefile?

问题描述:

我想只需键入“让所有”,并有下面的Makefile尽一切应该做的:如何将全部规则添加到此Makefile?

LEX = lex 
YACC = yacc 
CC = gcc 

calcu: y.tab.o lex.yy.o 
    $(CC) -o calcu y.tab.o lex.yy.o -ly -lfl 

y.tab.c y.tab.h: parser.y 
    $(YACC) -d parser.y 

y.tab.o: y.tab.c parser.h 
    $(CC) -c y.tab.c 

lex.yy.o: y.tab.h lex.yy.c 
    $(CC) -c lex.yy.c 

lex.yy.c: calclexer.l parser.h 
    $(LEX) calclexer.l 

clean: 
    rm *.o 
    rm *.c 
    rm calcu 
+1

我看到了这个:) – 2009-11-16 00:51:28

+0

请指定“make”标记而不是“makefile”。更多信息:http://meta.stackexchange.com/questions/24030/why-do-they-specify-makefile-tag-instead-of-make/26567#26567 – 2009-11-18 06:44:57

什么都被它应该做什么?如果你只是想要它建立calcu,你所要做的就是输入make,它会使它与它所依赖的一切一起,因为它是文件中的第一条规则。

如果您仍然想制定all规则,可以这样做。我建议把这一点放在其他所有规则之上,这样你只需键入make而不是make all

all: calcu 
+2

.PHONY:全部 这告诉让你不要指望在构建之后实际上有一个名为“all”的文件。 – 2009-11-16 01:12:03