-c
и -o
не должны быть в CFLAGS
.Вместо этого они должны появляться непосредственно в командной строке компилятора, где это уместно.
Кроме того, цель $(LIBOBJS)
неверна, вам необходимо правило шаблона.Правило, которое вы имеете, будет ожидать, что один вызов компилятора создаст все объекты;но на самом деле вам нужно вызывать компилятор один раз для каждого объекта.
Вместо $(LIBOBJS): $(LIBSRCS)
и т. Д. Это может быть:
%.o : %.cpp
$(CC) $(CXXFLAGS) -c -o $@ $<