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

2021-08-17 08:52:58 字數 432 閱讀 4438

有一條命令如下:

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並不是乙個檔案,只相當於乙個識別符號,不能去比較man和flip.1的時間戳。因此每一次執行make man的時候,都會執行 nroff -man flip.1 > flip.man, 即使flip.1的時間戳沒有改變。所以,應該寫成這樣:

all: man

man: flip.man

flip.man: flip.1

nroff -man flip.1 > flip.man

makefile 目標 依賴檔案寫法

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

Makefile中的偽目標

華清遠見嵌入式學院 講師。所謂偽目標就是這樣乙個目標,它不代表乙個真正的檔名,在執行make時可以指定這個目標來執行其所在規則定義的命令,有時我們將乙個偽目標成為標籤。那麼到底什麼是偽目標呢?可能作為初學者還不會在乎這個問題,下面我們來看下我們將在什麼時候需要它。首先來看下面乙個例子 當前目錄下只有...

makefile中偽目標詳解

偽目標 下面解釋make是如何工作的 1 當遇到目標體clean時,make先檢視其是否有依賴體,因為clean沒有依賴體,所以make認為目標體是最新的而不執行任何操作.為了編譯這個目標體,必須輸入make clean.2 輸入make clean,此時假設該目錄下面不存在名為clean的檔案,那...