当不带参数调用 make 时执行哪些配方?
Which recipes are executed when make is invoked with no arguments?
当调用 make
时没有任何参数时,make 如何决定执行哪些(如果有)配方?
正如@Ruslan 在评论中所写,答案是 .DEFAULT_GOAL
变量和 Makefile 中定义的第一个目标的组合。
标题有点令人困惑,因为如果没有不同地指定(例如,通过使用 .DEFAULT_GOAL
或通过将目标名称作为 make
).然而,这并不一定意味着第一个 recipe
也会被执行。如果make
考虑目标up-to-date,则根本不会执行任何配方。
当调用 make
时没有任何参数时,make 如何决定执行哪些(如果有)配方?
正如@Ruslan 在评论中所写,答案是 .DEFAULT_GOAL
变量和 Makefile 中定义的第一个目标的组合。
标题有点令人困惑,因为如果没有不同地指定(例如,通过使用 .DEFAULT_GOAL
或通过将目标名称作为 make
).然而,这并不一定意味着第一个 recipe
也会被执行。如果make
考虑目标up-to-date,则根本不会执行任何配方。