我希望make
删除除源文件和make规则文件(即名为makefile
的文件)之外的所有文件,因此我在{{1}的末尾添加了一条虚假规则}:
makefile
这就是我想要的。但.PHONY:clean
clean:
$(shell ls | grep -v "[.][ch]" | grep -v makefile | xargs rm)
总是抱怨
make
运行make: Nothing to be done for 'clean'.
后。为什么会显示此消息?我怎么能让它消失呢?
答案 0 :(得分:1)
不需要使用$(shell ...)
。它运行命令,然后输出就像它是Makefile的一部分一样。没有输出,因此生成的规则是:
clean:
即。更新清理目标的实际命令列表为空。