[英]Corresponding dependency and target lists in Makefile
在一个makefile中,假设我有两个对应的依赖项和目标列表,如下所示:
SRC = x.c y.c z.c
OBJS = x.o y.o z.o
当然,我的示例比这更复杂,但是我想知道是否有可能分别根据xc,yc和zc自动创建目标xo,yo,zo,如下所示:
x.o: x.c
y.o: y.c
z.o: z.c
我认为问题是如何为每个目标创建规则,而不是如何从SRC
创建OBJS
(尽管这样做很好!)。
最简单的方法是在已经知道如何执行的make中使用内置规则。 您不需要自己编写。 只需使用:
all: $(OBJS)
它们都将被创建。 您可以通过设置CC
变量,通过设置CPPFLAGS
变量的预处理器标志以及通过设置CFLAGS
变量的其他编译器标志来控制编译器。
如果您确实想编写自己的规则,那么模式规则将为您轻松做到这一点:
%.o : %.c
$(CC) $(CPPFLAGS) $(CFLAGS) -c -o $@ $<
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.