default的含义是什么:这个makefile中的类?

时间:2016-04-23 23:32:01

标签: java linux unix makefile gnu-make

对此的评论是“默认的制作目标条目”。 谁能在这条线上解释更多? 为什么我们在这里使用“默认”而不是“全部”?我可以将名称更改为我想要的名称吗? 谢谢!

JFLAGS = -g
JC = javac
.SUFFIXES: .java .class
.java.class:
        $(JC) $(JFLAGS) $*.java

CLASSES = \
        Foo.java \
        Blah.java \
        Library.java \
        Main.java 

default: classes

classes: $(CLASSES:.java=.class)

clean:
        $(RM) *.class

1 个答案:

答案 0 :(得分:0)

单词"默认"的含义是"隐含"或者"如果没有给出"。在makefile中,如果你打电话

>make
如果没有明确说明目标,则更新makefile中的第一个目标(除了以.开头的目标)。因此,第一个这样的目标被调用"默认"是有意义的。是的,如果你想让所有人感到困惑,你可以把它改成其他东西。

但是,根据Make手册的惯例,第一个目标的名称应该是all。所以alldefault更好,这比其他任何东西都好。

此外,"默认为目标条目"是一个糟糕的评论。正确的术语是"制作目标",并用#34;默认"来评论目标名为default的目标。是浪费人物:)