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