首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >GNU-make规则中的true命令

GNU-make规则中的true命令
EN

Stack Overflow用户
提问于 2012-10-09 02:34:52
回答 1查看 1.1K关注 0票数 0

我正在处理我实验室中其他人写的Makefile,我在一些规则中看到了一个名为true的命令:

代码语言:javascript
复制
other_rule_A: YYY force_it
          ....
other_rule_B: XXX force_it
          ....

force_it:
          true

true在这里是什么意思?它是由子subshell运行的命令吗?如果我将它替换为false,会发生什么?true是由外壳调用的二进制文件吗?

作为参考,我在Stackoverflow中发现了另一个问题:Why do makefiles sometimes have 'true ' as part of the build script?,但我不认为命令与他们在该线程中涵盖的命令相关。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-10-09 02:43:35

true是一个不执行任何操作并返回成功的命令(通常是可执行的/bin/true,但通常也是shell内置的)。如果将其替换为false,则force_it:规则将始终失败,从而在此时停止make进程。

具有此true操作与具有不带操作的force_it:规则之间的区别在于,在没有操作的情况下,可能会有其他force_it:规则将操作添加到makefile中的其他位置。对于true操作,您知道不能有其他操作--如果添加了另一个操作,您将得到一个make错误。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12787482

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档