gpt4 book ai didi

makefile - 获取 "make: Nothing to be done for ' 目标的错误'"

转载 作者:行者123 更新时间:2023-12-02 21:43:28 24 4
gpt4 key购买 nike

让我用一个例子来说明它。

mkdir test
cd test
touch target
make target

这将导致:make:不对“目标”执行任何操作。

所以ma​​ke告诉我没有什么可做的。这是因为 ma​​ke 没有找到 make target 的规则,而是因为 target 已经存在 ma​​ke 告诉我无事可做。

现在,我不想这样。我希望 ma​​ke 在无法找到 target 的规则时给出错误,即使 target 已经存在。

我尝试过以下方法:

echo '.DEFAULT:
echo make: *** No rule to make target `$@'. Stop.
false'> Makefile

但是在创建多个目标时,这不会停止ma​​ke

最佳答案

问题是,make 假定目标名称也是一个将由给定命令构建的文件。

但有时这不是真的(例如认为“干净”)。要告诉 make 某些目标不构建此文件,您需要将它们设置为“虚假”。将以下行放入您的 Makefile 中:

.PHONY: target

关于makefile - 获取 "make: Nothing to be done for ' 目标的错误'",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6751376/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com