makefile清除目標檔案的規則

2021-10-07 13:26:30 字數 644 閱讀 1991

剛開始學習makefile的時候,我覺得直接刪除多於的*.o 檔案和 tags和cscope產生的資料庫,就好了後來發現,這樣做不是很好,不符合程式設計師的修養 。

舉乙個簡單的例子:

bj

.phony:all clean

src=

$(wildcard *.c)

objs=

$(src:.c=.o)

target=test.d

all:

make

$(target)

@ctags -r

@cscope -rbq

$(target)

:$(objs)

gcc $(filter %.o,$^)

-o $@

$(objs)

:$(src)

gcc -c $(filter %.c,$^)

clean:

@-rm -rf $(target)

$(objs)

*.out tags

在rm 之前方乙個「-」 ,意思是當其他檔案出現問題時縣忽略,首先處理其他的檔案

為什麼沒寫makefile的基礎

因為沒有必要 ,筆記的主要目的是總結自己的想法和看法,基礎的東西還是得自己查,自己練習

makefile 目標 依賴檔案寫法

簡要說下makefile的乙個基本格式 目標 依賴檔案 目標 tab 命令 目標 是你要生成的或操作的命令的索引 依賴 是生成目標依賴的檔案或目標 依賴檔案的任一處改動,將導致已存在的目標檔案過期 命令 是為了生成目標的給shell執行的命令 需要注意的是,依賴的作用 依賴檔案的任一處改動,將導致已...

Makefile中目標檔案不是真正的檔案時

有一條命令如下 nroff man flip.1 flip.man 該命令會編譯檔案flip.1,並將輸出儲存在flip.man 寫乙個makefile,用make man來執行它,如果這樣寫 all man man flip.1 nroff man flip.1 flip.man 這裡因為man並...

三 Makefile 生成多個目標檔案

一 makefile規則 二 makefile案例 多個檔案生成乙個目標檔案 三 makefile 生成多個目標檔案 四 makefile包含 標頭檔案和庫檔案 我們工作的時候經常會遇到 要多寫幾個不同的測試案例,去測試不同的功能,這個時候 需要編譯多個 可執行檔案。假如我們的目錄下有三個原檔案需要...