提问人:Timmmm 提问时间:11/17/2023 更新时间:11/17/2023 访问量:19
关于使用分组目标覆盖配方的 Makefile 警告
Makefile warning about overriding recipe with grouped targets
问:
有关分组目标的 Make 文档提供了以下示例:
foo bar biz &: baz boz
echo $^ > foo
echo $^ > bar
echo $^ > biz
这似乎工作正常,但是如果我添加第二个分组目标:
foo bar biz &: baz boz
echo $^ > foo
echo $^ > bar
echo $^ > biz
foo2 bar2 biz2 &: baz boz
echo $^ > foo2
echo $^ > bar2
echo $^ > biz2
我收到以下警告:
Makefile:7: warning: overriding recipe for target '&'
Makefile:2: warning: ignoring old recipe for target '&'
为什么?
答:
-1赞
Timmmm
11/17/2023
#1
啊,这似乎是 Make 中的一个错误。我在 4.2.1 版中收到该警告,但 4.4.90 版没有收到该警告。
评论
1赞
MadScientist
11/17/2023
这绝对不是一个错误。在线手册记录了GNU Make的最新发布版本(显然)。那是版本 4.4.1: ftp.gnu.org/gnu/make/?C=M;O=D 您使用的是 7 年前 2016 年发布的旧版本 4.2.1。此功能是在版本 4.3(2020 年发布)中添加的。您可以在此处找到有关哪个版本中提供了哪些功能的更多信息:git.savannah.gnu.org/cgit/make.git/tree/NEWS?h=4.4.1
1赞
MadScientist
11/17/2023
如果你想阅读特定于你的GNU Make版本的文档,你应该看看你的版本附带的文档:它们应该被提供在你正在使用的任何软件包中。
评论