在makefile中,下面的操作是什么?
rule: $(deps)
@:
我好像在制造手册上找不到这个。
最佳答案
意思是“不要在输出端回显这个命令”,所以这个规则是“执行shell命令:
,不要回显输出。
当然,shell命令:
是一个no-op,所以这里说的是“不做任何事,不要告诉别人”。
为什么?
这里的诀窍是你有两种不同语法的模糊组合。make(1)语法是使用以@开头的操作,这只是不回显命令。所以像这样的规则
always:
@echo this always happens
不会发射
echo this always happens
this always happens
现在,规则的操作部分可以是任何shell命令,包括
:
。bash help解释了这一点,也解释了任何地方:$ help :
:: :
Null command.
No effect; the command does nothing.
Exit Status:
Always succeeds.
关于makefile - @:(在符号冒号处)在Makefile中是什么意思?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/41098754/