我正在爲我的程序「p1」寫一個makefile,但無法讓我的「clean」工作。Clean指令不能在makefile中工作
#Default target
p1: main.o bst_insert.o bst_info.o
gcc main.o bst_insert.o bst_info.o -o p1
#START Dependencies for default target
main.o: const.h bst_insert.h bst_info.h bst_struct_def.h main.c
gcc -c main.c
bst_insert.o: bst_struct_def.h bst_insert.h bst_insert.c
gcc -c bst_insert.c
bst_info.o: bst_struct_def.h bst_info.h bst_info.c
gcc -c bst_info.c
#END Dependencies for default target
#Target for removing unnecessary files.
clean:
rm -f *.o core
這裏是前/後:
無論出於何種原因, 「乾淨」 從未執行。有人能告訴我爲什麼嗎?我是新來的makefile,所以我可能會犯一個我不知道的非常明顯的錯誤。
好的,所以它不應該自行運行 - 它必須明確地稱爲? –
我之前沒有在項目自述中看到這個:'當我們使用clean作爲目標運行make時,它應該刪除所有「.o」文件和名爲core的文件(如果有的話)。我認爲在創建p1之後,乾淨的目標必須自動運行。 –
謝謝你讓我知道它必須手動運行。 –