gpt4 book ai didi

c - 生成文件错误 *** 没有规则可生成 `3' 所需的目标 `run'。停止

转载 作者:行者123 更新时间:2023-11-30 18:27:52 25 4
gpt4 key购买 nike

我正在为 C 创建一个 makefile,我通过命令行传递两个参数。这就是我在命令行上运行的内容。

    dipesh@ubuntu:~/Desktop$ make run H=3 C=3

但我收到以下错误

Make File Error *** No rule to make target `3', needed by `run'.  Stop

这是我的制作文件

all: forkk.o
gcc -Wall fork.o -o forkk.out
forkk.o: forkk.c
gcc -Wall -c forkk.c

run: ./forkk.out $(H) $(C)

clean:
rm forkk

最佳答案

为了更具体地说明尤金的评论,这一行:

run: ./forkk.out $(H) $(C)

是错误的。您已将配方(要调用的命令)与目标放在同一行,因此 make 认为配方命令实际上是一组先决条件。当你运行时:

make H=3 C=3

该行扩展为:

run: ./forkk.out 3 3

并且 make 尝试找到一种方法来构建先决条件“3”,从而导致您看到的错误。

你想要这个:

run:
./forkk.out $(H) $(C)

如果您确实希望它在一行上,则必须使用 ; 将规则与配方行分开:

run: ; ./forkk.out $(H) $(C)

关于c - 生成文件错误 *** 没有规则可生成 `3' 所需的目标 `run'。停止,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52189636/

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