gpt4 book ai didi

bash - Makefile - 如何区分变量赋值和命令

转载 作者:行者123 更新时间:2023-11-29 09:48:59 24 4
gpt4 key购买 nike

我的 Makefile 中有以下代码,但我收到错误提示 O?=2 不是 sh -c 可以运行的命令。我在这里做错了什么?

gcc:
O?=2
@if test -z "$(DEBUG)" ; then \
g++ -O${O} *.c -o palindrome ; \
fi

如果用户没有提供,我试图将 O 设置为 2,然后构建我的回文可执行文件。


确切错误:

$ make gcc
O?=2
/bin/sh: O?=2: command not found
make: *** [gcc] Error 127
$

最佳答案

将它移到命令之外,以便它由“make”而不是 shell 处理:

O?=2
gcc:
@if test -z "$(DEBUG)" ; then \
g++ -O${O} *.c -o palindrome ; \
fi

关于bash - Makefile - 如何区分变量赋值和命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13222718/

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