Makefile обновляется каждый раз
Oct 27 2020
Я не могу понять, почему мой Makefile каждый раз переключается. Может кто-нибудь мне объяснить?
Вот мой Makefile:
SRCS = ${wildcard ./srcs/*.c} OBJS = ${SRCS:.c=.o}
INCL = includes
CC = gcc
CFLAGS = -Wall -Wextra -Werror
NAME = BSQ
.c.o :
${CC} -I ${INCL} ${CFLAGS} -c $< -o ${<:.c=.o} all : ${OBJS}
${CC} -o ${NAME} ${OBJS} clean : rm -f ${OBJS}
fclean : clean
rm -f ${NAME}
re : fclean all
Ответы
3 Barmar Oct 27 2020 at 14:53
Поскольку allцель не создает файл с именем all, поэтому makeне знает, что это уже было сделано.
Вы должны установить allзависимость ${NAME}, а затем добавить цель, ${NAME}которая выполняет связывание.
all: ${NAME} ${NAME}: ${OBJS} ${CC} -o $@ $^