makefile語法示例
Makefile基礎:
####################################
edit : main.o kbd.o
cc -o edit main.o kdb.o
main.o : main.c defs.h
cc -c main.c
kbd.o : kbd.c defs.h command.h
cc -c kbd.c
clean:
rm *.o edit
########
makefile中使用變量:
objects = main.o kbd.o
edit : &(objects )
cc -c main.c
main.o : main.c defs.h
cc -c main.c
kbd.o : kbd.c defs.h command.h
cc -c kbd.c
clean:
rm objects edit
如果有新的.o文件加入,我們隻需要簡單滴修改一下objects變量就可以了。
當然,你可以使用別的文件名來書寫Makefile,比如:“Make.Linux”,“Make.Solaris”,“Make.AIX”等,如果要指定特定的Makefile,你可以使用make的“-f”和“--file”參數,如:make -f Make.Linux或make --file Make.AIX。
波浪號(“~”)字符在文件名中也有比較特殊的用途。如果是“~/test”,這就表示當前用戶的$HOME目錄下的test目錄。而“~hchen/test”則表示用戶hchen的宿主目錄下的test目錄。
Makefile文件中的特殊變量“VPATH”就是完成文件搜索功能的,如果沒有指明這個變量,make隻會在當前的目錄中去找尋依賴文件和目標文件。如果定義了這個變量,那麼,make就會在當當前目錄找不到的情況下,到所指定的目錄中去找尋文件了。
VPATH = src:../headers
上麵的的定義指定兩個目錄,“src”和“../headers”,make會按照這個順序進行搜索。目錄由“冒號”分隔。(當然,當前目錄永遠是最高優先搜索的地方)
最後更新:2017-04-03 16:48:53