2011-11-23 64 views
2

Typping make(GNU MAKE)具有以下Makefile(假設文件foo.xfoo.y缺失)化妝:</p> <pre><code>make: *** No rule to make target `foo.x', needed by `foo.z'. Stop. </code></pre> <p>但是:強制規則

all: foo.z 

foo.z: foo.x foo.y 
    cat foo.x foo.y > foo.z 

產生錯誤信息使用此Makefile

all: foo.z 

%.z: %.x %.y 
    cat %.x %.y > %.z 

生成此錯誤消息:

make: *** No rule to make target `foo.z', needed by `all'. Stop. 

在第一種情況下,應用規則,並且如果發現缺少依賴項。 在第二種情況下,發現該規則不合適,並且這是缺少的規則。

我想使用第二個Makefile(我有很多*.z對象被創建),但帶有一個錯誤消息,如第一個Makefile。我的make輸出被記錄下來,並且具有缺少文件的擴展名稱將有助於調試。

可能嗎?也許有辦法強制規則被使用?

當然我不是catting文件,這只是一個例子...

+0

你應該發佈你的答案作爲答案,而不是你的問題的一部分。 –

+0

完成。我想我寫了答案作爲我的問題的一部分,因爲那時我有一個規則阻止我在一段時間內回答我的問題...... – user744629

回答

相關問題