【发布时间】:2013-04-07 20:02:42
【问题描述】:
我使用自动变量($@,$^)和模式(%)编写了以下makefile,但它不能与gnu make一起使用:
TARGET = edit
SRCS = $(wildcard *.c)
OBJS = $(SRCS:%.c=%.o)
$(TARGET) : $(OBJS)
gcc $^ -o $(TARGET)
%.o : %.c
gcc $< -c $@
我在工作目录中有 foo.c ,bar.c 。 错误是:
gcc foo.c -c foo.o
gcc: foo.o: No such file or directory
make: *** [foo.o] Error 1
我对@987654325@ 和pattern rules 感到很困惑,如何准确地使用它们?他们有什么关系吗?
【问题讨论】: