2013-04-21 62 views
0

我有一個make文件的問題。它在創建第一個.o文件後不會繼續讀取。這裏是我的make文件:Makefile不讀取其他文件

CC = g++ 
CFLAGS = -g 
LDFLAGS = -lm 

PokerEval.o: PokerEval.cpp 
    ${CC} ${CFLAGS} -c PokerEval.cpp 

random.o: random.cpp random.h 
    ${CC} ${CFLAGS} -c random.cpp 

myprogram: random.o PokerEval.o 
    ${CC} ${CFLAGS} PokerEval.o random.o ${LDFLAGS} -o myprogram 

clean: 
    rm -f myprogram *.o 
.PHONY: all clean 

所以,當我運行它,我得到的是這樣的:

$ make 
g++ -g -c PokerEval.cpp 

回答

2

製作通常構建第一目標,除非你指定一個目標makefile文件在命令行上。

因此,您通常首先指定您的主要目標(例如,可執行文件),然後再依賴它。

請注意,您可以(並經常)在第一個目標之前定義 - 它們不會被視爲目標。


  1. 「通常」在這種情況下,意思是「一如既往地與正確設計製作工具」。例外是他們稱之爲make的一個古老的微軟工具,但是無論如何,它都內置了的一切。他們目前的nmake(「新制造」)工作(至少半)是正確的,但現在已經有數十年了。
+0

+1好的歷史視角 – sehe 2013-04-22 00:02:44

相關問題