gpt4 book ai didi

gnu-make - GNU make 先决条件执行顺序

转载 作者:行者123 更新时间:2023-12-04 05:31:17 29 4
gpt4 key购买 nike

假设我有以下 GNU make 目标:

    create_dir: 
@mkdir objects

build_asm: $(ASM_FILES)
@echo building assembly files...

build_c: $(C_FILES)
@echo building c files...

我有一个从 .asm 或 .c 文件创建目标文件的通用规则。我想将这些组合成一个单一的目标,如下所示......
all: create_dir build_asm build_c
@echo build complete

...并且我想使用使用多个作业的作业来构建此目标以提高性能。 *.c 和 *.s 文件应该放在 创建的目录中build_c ,因此允许 make 以任何顺序执行它们是有问题的。

有没有办法强制 make 解决虚假目标 create_dir 解决前 build_c build_asm 不打破目标?

最佳答案

创建对象目录是“仅订购先决条件”的典型用例(参见 GNU make 手册中的 Types of Prerequisites):

create_dir: 
@mkdir objects

build_asm: $(ASM_FILES) | create_dir
@echo building assembly files...

build_c: $(C_FILES) | create_dir
@echo building c files...

all: build_asm build_c
@echo build complete

关于gnu-make - GNU make 先决条件执行顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12523130/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com