如果我嘗試make all
,我得到:有makefile文件相關的噩夢
make: ***No rule to make target 'src\SOURCES', needed by 'all'. Stop.
如果我嘗試make qwark
,我得到:
make: ***No rule to make target 'obj\src\SOURCES' needed by 'qwark'. Stop.
如果我嘗試make qwark.o
,我得到
Fatal error: can't create obj\qwark.o: No such file or directory
make: *** [qwark.o] Error 1
這裏是我的源代碼,爲您的觀賞樂趣...
COMPILER := g++
CFLAGS :=
LDFLAGS :=
SOURCES := quark.cc
SOURCES := $(addprefix src\,SOURCES)
OBJECTS := $(addprefix obj\,$($(notdir SOURCES):.cc=.o))
EXECUTABLE := qwark.exe
DEBUG := bin\debug\$(EXECUTABLE)
NORMAL := bin\release\$(EXECUTABLE)
all: $(SOURCES) $(EXECUTABLE)
release: qwark
normal: qwark
qwark: $(OBJECTS)
$(CC) $(LDFLAGS) $(OBJECTS) -o [email protected]
qwark.o: src\qwark.cc
$(CC) $(CFLAGS) -c src\qwark.cc -o obj\qwark.o
%.o: src\%.cc
$(CC) $(CFLAGS) -c $(input) -o obj\$(output)
請,有人告訴我它是什麼,我做錯了..........
從哪裏來的反斜線? 'make'真的可以識別那些作爲目錄分隔符嗎? – reinierpost 2012-02-06 08:49:32
@reinierpost是的。是的,它確實。我正在編譯一個窗口框,但出於兼容的目的,這也可以在Linux上進行。我不知道mac。 – Andonuts 2012-02-07 02:40:50