gpt4 book ai didi

c++ - 替代 GNU make 3.79.1 的 makefile 中的二次扩展

转载 作者:行者123 更新时间:2023-11-30 02:09:49 25 4
gpt4 key购买 nike

我一直在研究一个使用二次扩展的 makefile,但我不知道此功能仅在 GNU make 3.81 版后才存在。不幸的是,这里有一些旧机器只安装了 make 3.79.1,当然在这些机器上,makefile 不工作。有二次扩张的替代方案吗?

我使用它的 C++ 程序的规则如下所示:

.SECONDEXPANSION:

# Pattern rule for linking
%_$(SYSTEM) : $$(%_ofiles) $(EXEC)/%_$(SYSTEM).o
$(LD) $(LDFLAGS) -o $@ $^ $(LIBS)

# Example for an ofiles variable
prog1_ofiles = $(C1) $(C2)

C1 = $(OFILES)/C1.o

C2 = $(OFILES)/C2.o

我知道 - 最好的解决方案是安装当前的 make 版本。但是我们的系统管理员对此并不热心 ;) 所以我期待着您的建议。

顺便说一句,有谁知道从哪里获得 GNU make 3.79.1 的文档——我在任何地方都找不到。

最佳答案

只需在您的源代码树中添加make-3.81 源代码。您的主 Makefile 首先应使用任何可用的 make 编译 make-3.81,然后使用 make-3.81 编译其他所有内容。

关于c++ - 替代 GNU make 3.79.1 的 makefile 中的二次扩展,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5079877/

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