出于好奇心,在makefile中执行目标的顺序是什么?
${OBJ_DIR}/%.o: ${SRC_DIR}/%.cpp
我注意到它是 不 词汇学 ls -l
).是随机的吗?
它们是按照使走先决图的顺序建立的。
在简单的情况下,你没有并行作业(没有 -j
选项),那么如果你有一个像目标。
prog: foo.o bar.o. baz.o
make将首先尝试建立 foo.o
那么 bar.o
那么 baz.o
然后,最后 prog
.
如果你启用了并行作业,那么make仍然会尝试着进行 开始 构建的顺序是一样的,但由于有些构建比其他构建完成得更快,你可能会在同一时间得到不同的目标构建。