2011-08-06 42 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);)