Makefile gmake通配符函数未生成目标
我正在用MinGW在Windows上使用gmake。这是makefile的一个片段:Makefile gmake通配符函数未生成目标,makefile,gnu-make,Makefile,Gnu Make,我正在用MinGW在Windows上使用gmake。这是makefile的一个片段: SRCS = ..\path\to\srcs\*.c* SRCS := $(wildcard $(SRCS)) OBJS := $(addsuffix .o,$(basename $(SRCS))) $(OBJS) : $(SRCS) $(CC) $(FLGAS) $(INCLUDES) "$<" 我得到以下信息: gmake:**没有目标。停下来 例如,如果我将SRCS定义为..\path\
SRCS = ..\path\to\srcs\*.c*
SRCS := $(wildcard $(SRCS))
OBJS := $(addsuffix .o,$(basename $(SRCS)))
$(OBJS) : $(SRCS)
$(CC) $(FLGAS) $(INCLUDES) "$<"
我得到以下信息:
gmake:**没有目标。停下来
例如,如果我将SRCS定义为..\path\to\SRCS\a.c,它就可以工作。
我是否以正确的方式使用通配符
我使用的是GNU Make 3.81。Make不能很好地处理反斜杠;您需要将每个斜杠加倍,或者更好地切换为正向斜杠
但是,您的配方覆盖了从C文件创建对象文件的内置规则,其中包含一个损坏的文件。
您的配方声称所有$obj都将从一个编译中生成,该编译将所有$src作为依赖项,但只读取第一个$
.PHONY: all
all: $(OBJS)
%.o: ../path/to/srcs/%.c