0
我想讓這個makefile重新鏈接,而不是重新編譯未修改的unessecarily文件。 「libft」是我的圖書館,並沒有任何錯誤。做Makefile重新鏈接錯誤
make
當我遇到的錯誤是:
make: *** No rule to make target `main.o', needed by `ft_printf'. Stop.
我的Makefile:
NAME = ft_printf
SRC = main.c\
ft_printf.c\
parser_main.c\
utils.c\
debug_funcs.c
OBJ = $(SRC:.c=.o)
SRC_PATH = srcs/
SRC_POS = $(addprefix $(SRC_PATH),$(SRC))
INC = -I includes
LIBFT = libft/libft.a
CC = gcc
FLAGS = -Wall -Wextra -Werror
all: $(NAME)
$(NAME): $(OBJ)
$(CC) $(FLAGS) $(OBJ) -o $(NAME) $(LIBFT)
%.o: %.c
$(CC) -o [email protected] -c $< $(FLAGS)
$(LIBFT):
make -C ./libft/
clean:
rm -f $(OBJ)
make clean -C ./libft/
fclean: clean
rm -f $(NAME)
make fclean -C ./libft/
re: fclean all
任何想法?我不出來,我想這是因爲%的.o:%C不叫
@ Seluj78歡迎你,歡迎到SO!請參閱[有人回答時該怎麼辦](http://stackoverflow.com/help/someone-answers) – Barry