Makefile Gcc错误没有这样的文件或目录

Makefile Gcc错误没有这样的文件或目录,makefile,gnu-make,makefile-errors,Makefile,Gnu Make,Makefile Errors,我已经为此工作了两天,但仍然无法使这个makefile正常工作 这就是我目前拥有的: INCDIR = inc/pvt inc/pub SRCDIR = src OBJDIR = obj LIBDIR = lib CC=gcc CFLAGS := $(foreach d, $(INCDIR), -I$d) _SRC = teos_event.c teos_init.c teos_linkedlist.c teos_log.c teos_sem.c teos_task.c _OBJ := $(

我已经为此工作了两天,但仍然无法使这个makefile正常工作

这就是我目前拥有的:

INCDIR = inc/pvt inc/pub
SRCDIR = src
OBJDIR = obj
LIBDIR = lib

CC=gcc
CFLAGS := $(foreach d, $(INCDIR), -I$d)

_SRC = teos_event.c teos_init.c teos_linkedlist.c teos_log.c teos_sem.c teos_task.c
_OBJ := $(subst $(SRCDIR),$(OBJDIR),$(_SRC:%.c=%.o))
OBJ := $(patsubst %,$(OBJDIR)/%,$(_OBJ))

build: $(OBJ)
    $(CC) -o $@ $^ $(CFLAGS) -fmax-errors=1

$(OBJDIR)/%.o: %.c
    $(CC) -c -o $@ $< $(CFLAGS) -fmax-errors=1

$(OBJ): $(DEPS)

我试图让它在没有makefile错误的情况下构建。任何帮助都会很好。

您没有注意到它没有构建teos_event.o吗

更改此项:

$(OBJDIR)/%.o: %.c
    ...
为此:

$(OBJDIR)/%.o: $(SRCDIR)/%.c
    ...

是的,我在make的noob,它的语法似乎太过时了。非常感谢!
$(OBJDIR)/%.o: $(SRCDIR)/%.c
    ...