我正在爲移動設備(Windows Mobile 6和Android)設計跨平臺2D引擎。我的Windows版本已經準備就緒,但我仍然需要確保Android上提供相同的功能。Makefiles:從一個目錄獲取.cpp,並將編譯好的.o放到另一個目錄中
我想要的是一個Makefile
在項目的根和幾個Makefile
的項目本身和測試應用程序。
Makefile
---Engine
------Makefile
------src
------bin
------intermediate
---Tests
------TestOne
---------Makefile
---------src
---------bin
---------intermediate
------TestTwo
---------Makefile
---------src
---------bin
---------intermediate
我立足於以下Makefile
我嘗試:
include ../makeinclude
PROGS = test1
SOURCES = $(wildcard *.cpp)
# first compile main.o and start.o, then compile the rest
OBJECTS = main.o start.o $(SOURCES:.cpp=.o)
all: $(PROGS)
clean:
rm -f *.o src
test1: $(OBJECTS)
$(LD) --entry=_start --dynamic-linker system/bin/linker -nostdlib -rpath system/lib -rpath $(LIBS) -L $(LIBS) -lm -lc -lui -lGLESv1_CM $^ -o ../[email protected]
acpy ../$(PROGS)
.cpp.o:
$(CC) $(CFLAGS) -I $(GLES_INCLUDES) -c $*.cpp $(CLIBS)
不過,我不太會用這些東西。我想要的是將文件夾中的.cpp文件編譯爲.o文件,並將它們放在intermediate
文件夾中,最後將.o文件編譯爲編譯後的exe文件,並將其放入bin
文件夾中。
我已經成功地得到清潔這樣的工作:
cd intermediate && rm -f *.o
但是,我不能讓它檢索的.cpp的,編譯它們並把它們在intermediate
文件夾中。
我看了其他幾個Makefiles
,但沒有做我想做的事情。
任何幫助表示讚賞。
請指定「make」標記而不是「makefile」。更多信息:http://meta.stackexchange.com/questions/24030/why-do-they-specify-makefile-tag-instead-of-make/26567#26567 – 2009-11-18 06:45:31
嗯,我*是一個小白這些事情。 :P – knight666 2009-11-18 13:41:18