下面的两个选项有什么区别?在这两种情况下都不会$<
扩展到只有一个requisite
(根据定义为“第一个”)?
选项1:
libcounter.a(lexer.o): lexer.o
$(AR) $(ARFLAGS) $@ $<
libcounter.a(counter.o): counter.o
$(AR) $(ARFLAGS) $@ $<
选项 2:
libcounter.a: lexer.o
$(AR) $(ARFLAGS) $@ $<
libcounter.a: counter.o
$(AR) $(ARFLAGS) $@ $<
ARFLAGSrv
在这两种情况下都成立。
作为参考,这些示例取自《使用 GNU Make 管理项目》一书。