2011-08-06 48 views
0

我在做一個Makefile迭代文件併爲每個文件執行一個命令。命令執行正常,但後來出錯了make。這是我的Makefile爲什麼這個Makefile出錯?

SHELL := /bin/bash 

link: .gemrc .vimrc .gitconfig 
    $(foreach df, $^, cat $(df)) 

輸出是每個文件的內容,然後make: *** [link] Error 1

我如何make不會報錯了?

+0

你的意思是忽略了執行語句的返回值? –

+0

我可以做些什麼來放棄返回值? –

+0

用'-'符號前置命令。 –

回答

2

問題是該命令擴展爲cat .gemrc cat .vimrc cat .gitconfig,由於它無法找到名爲cat的文件,所以出現錯誤,以至於貓。

這裏是如何做到這一點二:

link: .gemrc .vimrc .gitconfig 
    cat $^ 

link: .gemrc .vimrc .gitconfig 
    $(foreach df, $^, cat $(df);)