c++ - Would GNU Make automatically add extra prerequisite? -
the following example snippet "managing projects gnu make(3rd edition)" p.21.
count_words: counter.o lexer.o -lfl the author says make automatically add count_words.o prerequisite list implicit rule. quoted:
..., make identifies 4 prerequisites: count_words.o (this prerequisite missing makefile, provided implicit rule), counter.o, lexer.o, , -lfl.
however, test doesn't conform that. here test:
prog: abc.o @echo $^ abc.o: @echo abc.o built. prog.o: @echo prog.o bulit. the output after running make is:
abc.o built.
abc.o
make didn't seek prog.o target prog. what's problem? there wrong test?
by way, test on cygwin gnu make 4.1.
you gave recipe prog target. author didn't count_words target. that's difference.
the author counting on built in %: %.o rule take effect. overrode rule.
remove @echo $^ prog recipe , try again.
Comments
Post a Comment