makefile之通配符(4)
生活随笔
收集整理的這篇文章主要介紹了
makefile之通配符(4)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
如果我們想定義一系列比較類似的文件,我們很自然地就想起使用通配符。make支持三個通配符:“*”,“?”和“~”。這是和Unix的B-Shell是相同的。
波浪號(“~”)字符在文件名中也有比較特殊的用途。如果是“~/test”,這就表示當前用戶的$HOME目錄下的test目錄。而 “~hchen/test”則表示用戶hchen的宿主目錄下的test目錄。(這些都是Unix下的小知識了,make也支持)而在Windows或是 MS-DOS下,用戶沒有宿主目錄,那么波浪號所指的目錄則根據環境變量“HOME”而定。
通配符代替了你一系列的文件,如“*.c”表示所有后綴為c的文件。一個需要我們注意的是,如果我們的文件名中有通配符,如:“*”,那么可以用轉義字符“\”,如“\*”來表示真實的“*”字符,而不是任意長度的字符串。
?
make有幾個常用的特殊通配符:
$@:所有目標的文件
$^:所有依賴文件
$<:第一個依賴文件
$?:所有更新過的依賴文件
?
舉例:創建makefile,輸入
test:*.o
?? ?gcc -o $@ $^
*.o:*.c
?? ?gcc -c $^
總結
以上是生活随笔為你收集整理的makefile之通配符(4)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: FreeRTOS队列集
- 下一篇: Altium Designer之Pref