gpt4 book ai didi

makefile - 在 Makefile 中调用我自己的脚本后,我可以调用另一个目标吗?

转载 作者:行者123 更新时间:2023-12-01 09:53:32 27 4
gpt4 key购买 nike

在我调用自定义命令之后,我想在我的 makefile 中调用另一个目标:

first_target:
do_some_stuff

second_target:
call some command
first_target

当我像上面那样做时,它提示找不到 first_target 命令。我该怎么做呢?

最佳答案

您必须记住,makefile recepies 必须遵循以下语法:

target: dependency1 dependency2 ... dependencyN
command1
command2
...
command3

command1 , command2 ... 是在您的系统 shell 上可执行的命令。所以因此写作 first_target在您的示例中,结果是 gmake试图执行命令 first_target由于没有这样的命令,所以失败了。

为了实现您的目标,您必须使用在接收者名称之后列出的依赖项。在您的示例中,依赖项列表为空。每个依赖项都必须在接收之前可用。对于每个依赖项,您的 makefile 中都应该有一个接收文件,所以 gmake能够创建接收所需的所有内容(或 gmake 将失败并显示 no rule to make target xxx )。还请记住,所有依赖项都是 之前 收据。

所以在你的情况下,我建议做这样的事情:
first_target:
do_some_stuff

second_target: first_target
call some command

这将导致以下命令序列(注意 first_target 的命令在 second_target 的命令之前执行):
do_some_stuff
call some command

我想这并不是你真正需要的,所以我建议创建一个新的构建目标,如下所示:
first_target:
do_some_stuff

second_target:
call some command

all: second_target first_target

这将导致以下命令序列:
call some command
do_some_stuff

关于makefile - 在 Makefile 中调用我自己的脚本后,我可以调用另一个目标吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33230565/

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