为什么抱怨“没有什么可以做'干净'”?

时间:2017-09-09 14:27:44

标签: makefile gnu-make

我希望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'. 后。为什么会显示此消息?我怎么能让它消失呢?

1 个答案:

答案 0 :(得分:1)

不需要使用$(shell ...)。它运行命令,然后输出就像它是Makefile的一部分一样。没有输出,因此生成的规则是:

clean:

即。更新清理目标的实际命令列表为空。