当前位置: 技术问答>linux和unix
请教makefile中的一个规则
来源: 互联网 发布时间:2016-04-27
本文导语: makefile中有下面这么一段: VARIABLE=$(foreach exampleName, $(EXAMPLE_NAMES), $(addsuffix /$(exampleName).results,$(TARGET))) ###1### %.results: $(EXAMPLE_DIRS) #commands1 ...
makefile中有下面这么一段:
VARIABLE=$(foreach exampleName, $(EXAMPLE_NAMES),
$(addsuffix /$(exampleName).results,$(TARGET))) ###1###
%.results: $(EXAMPLE_DIRS)
#commands1
$(TARGET): $(SOMETHING)
#commands2
请问:
(1)执行###1###时会执行#commands1么?
(2)如果会执行#commands1,那是先执行#commands1还是#commands2呢?
VARIABLE=$(foreach exampleName, $(EXAMPLE_NAMES),
$(addsuffix /$(exampleName).results,$(TARGET))) ###1###
%.results: $(EXAMPLE_DIRS)
#commands1
$(TARGET): $(SOMETHING)
#commands2
请问:
(1)执行###1###时会执行#commands1么?
(2)如果会执行#commands1,那是先执行#commands1还是#commands2呢?
|
一步一步的,除非有判断,跳转,
或者$代换等。
或者$代换等。
|
执行###1###时会执行#commands1么?
不会。
不会。
|
不会
|
在这个makefile文件中是不会的,但是可能前面的依赖后面的
因此,有可能后面的先运行,前面的后运行
还有多条命令是可以同时进行的,可以通过下面的命令来设置:
makefile -jn
其中n代表同时运行的命令数
因此,有可能后面的先运行,前面的后运行
还有多条命令是可以同时进行的,可以通过下面的命令来设置:
makefile -jn
其中n代表同时运行的命令数