[英]Makefile: make multiple c files to multiple binaries
我在目录中有一堆C文件(每个文件的名称都以字符program
开头,例如program1.c
, program2.c
, program3.c
),并且我打算将每个C文件编译成各自的文件二进制( program1
, program2
, program3
)。
我将如何编写Makefile
来实现这一目标,以便我可以简单地发出make
来创建多个二进制文件? ( 使用循环而不是为每个c源文件手动声明一个make语句)
这是我的尝试:
CFLAGS=-Wall -g
SRCS=$(wildcard program*.c)
all:
for F in *.c; do \
F=$${$$F.%c}; make $$F; done
clean:
rm -f program1
rm -f program2
rm -f program3
这给我一个bad subsitution
错误。
PROGS := $(patsubst %.c,%,$(SRCS))
all: $(PROGS)
clean:
/bin/rm $(PROGS)
应该做。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.