簡體   English   中英

我無法理解所有:在Makefile中的ex1? (學習C艱難的方式)

[英]I'm having trouble understanding all: ex1 in Makefile? (Learn C The Hard Way)

我正在通過Learn C The Hard Way和Ex2 Extra Credit工作,他們要求你創建一個all: ex1目標,它將使用命令make構建ex1。

這是我創建的代碼:

CFLAGS=-Wall -g

all: ex1

clean:
        rm -f ex1

有用。
當我從命令行運行make ,它make生成ex1文件。 當我運行make clean它會刪除文件。

我不明白的原因是:

all: ex1

是不是:

all:
    make ex1

從哪里獲取make命令? 我猜這個命令行,但是為什么make clean運行rm -f ex1而不是make rm -f ex1失敗。 這對我來說似乎不一致。 有人能解釋一下發生了什么嗎?

名稱all不是固定的,它只是一個傳統的名稱。 all: target表示如果你調用它, make將構建完成構建所需的所有內容。
所以從本質上講,你可以編寫make ex1 ,但是如果你說,有100個文件(ex1,ex2,ex3 ......)你就不想輸100行,對吧?

all通常也是.PHONY目標。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM