makefile соберет и поместит файлы .o в dir один раз, запустит один раз и очистит один раз.Но после того, как я очистил его, он не позволит мне пересобрать.
CC=g++
CFLAGS=-Wall -lm
TARGET=out
C_SRCS := \
$(wildcard *.cpp) \
HDRS := \
$(wildcard*.h) \
OBJS := $(patsubst %.cpp, bin/%.o, $(wildcard *.cpp))
build: $(OBJS)
$(CC) $(OBJS) -o $(TARGET) $(CFLAGS)
bin/%.o: %.cpp $(HDRS)
@mkdir -p $(dir $@)
$(CC) $(CFLAGS) $< -o $@
clean:
rm $(TARGET)
rm -r bin
run:
./$(TARGET) input.txt output.txt
Файлы, используемые в этой компиляции правильно, только файл make некорректен