Makefile错误1

时间:2017-04-21 16:25:09

标签: bash makefile

如果我在Makefile中有这个:

ifeq ($(RUN_INDEX),1)
    @echo Removing old index files...
    -rm *.*dx *.*nd *.ilg
endif

这总是返回"错误1(忽略)"除非每个文件中至少有一个扩展名为.dx,.nd或.ilg。

有没有办法避免这种情况,或者建议不要忽视它?

1 个答案:

答案 0 :(得分:0)

-前缀将忽略错误,但make仍会写出错误发生的消息。 (见this explanation。)

但您可以使用-f上的rm标记。这个标志意味着“没有flack”:如果rm找不到你要删除的文件,或者有其他问题,它就不会抱怨并且无论如何都会成功。 make将不再是明智的。

因此,请将makefile条目更改为:

ifeq ($(RUN_INDEX),1)
    @echo Removing old index files...
    -rm -f *.*dx *.*nd *.ilg
endif