我的makefile有些麻烦
当我尝试make
时,我收到错误:
no rule to make the target main.o
但是我无法看到我的错误,事实上它是我几年前制作的模板Makefile,它是一个cpp
项目。
(我还有另一个错误:/usr/bin/ld: can't find Sources/: file format not know
,我认为我的通配符出了问题)
NAME = Pretorian
SRCDIR = ./Sources/
HDDIR = ./Include/
SRCS = $(SRCDIR)$(wildcard *.cpp)
OBJ = $(SRCS:.cpp=.o)
CC = g++
RM = rm -f
ECHO = echo -e
CFLAGS += -W -Wall -Werror -ansi -pedantic
HFLAGS = -I$(HDDIR)
LDFLAGS =
%.o: %.cpp
$(CC) -o $@ -c $< $(CFLAGS)
$(NAME): $(OBJ)
@$(CC) $(CFLAGS) $(HFLAGS) -o $(NAME) $^ $(LDFLAGS)
@$(ECHO) '\033[0;32m> Compiled Without error\033[0m'
all:
$(NAME)
clean:
$(RM) $(OBJ)
@$(ECHO) '\033[0;33m> Directory cleaned\033[0m'
fclean: clean
$(RM) $(NAME)
@$(ECHO) '\033[0;33m> Remove executable\033[0m'
re: fclean all
答案 0 :(得分:1)
这似乎对我有用:
SRCS = $(wildcard $(SRCDIR)*.cpp)