2016-08-21 3 views
0

私は昨日、GNU makeについて学習し始めました。タイトルによれば、私のMakefileの%記号が認識されていないようです。あるいは私はそれを間違った方法で使用しているかもしれません。誰かが私を啓発することはできますか?Makefileのパーセント記号が認識されない

CXX = clang++ 
EXE = Invaders 

SDL = -F./lib 
LDFLAGS = $(SDL) 

SRCDIR = src 
OBJDIR = obj 

SRC = $(SRCDIR)/main.cpp $(wildcard $(SRCDIR)/util/*.cpp) $(wildcard $(SRCDIR)/misc/*.cpp) 
OBJ = $(patsubst $(SRCDIR)/%.cpp,$(OBJDIR)/%.o,$(SRC)) 

all: $(EXE) 

$(EXE): $(OBJ) 
    $(CXX) $(LDFLAGS) -o bin/[email protected] $^ 

$(OBJDIR)/%.o: $(SRCDIR)/%.cpp $(SRCDIR)/%.h 
    $(CXX) -c -o [email protected] $< 

コンソール出力:

make: *** No rule to make target `obj/main.o', needed by `Invaders'. Stop. 

Tree view of my entire project with directories /obj and /src expanded

ありがとう!

答えて

1

このルール:なしsrc/main.hがないため

$(OBJDIR)/%.o: $(SRCDIR)/%.cpp $(SRCDIR)/%.h 
    $(CXX) -c -o [email protected] $< 

は、obj/main.oに適合していません。

(また、質問の本文に必要な情報を入れてください。画像へのリンクには依存しないでください)

関連する問題