在 Makefile 中输出变量,你可以使用
echo
命令来输出变量的值。例如,假设你在 Makefile 中定义了一个变量
FOO
,你可以使用如下命令输出该变量的值:
FOO = bar
$(info $(FOO))
在上面的例子中,$(info ...)
命令用于输出信息到控制台,$(FOO)
表示变量 FOO
的值,所以这条命令输出的结果是:
你还可以使用 $(warning ...)
命令来输出警告信息,该命令输出的信息将会被以红色字体打印到控制台中。例如:
FOO = bar
$(warning The value of FOO is $(FOO))
在上面的例子中,$(warning ...)
命令用于输出警告信息到控制台,$(FOO)
表示变量 FOO
的值,所以这条命令输出的结果是:
Makefile:2: The value of FOO is bar
除此之外,你还可以在 Makefile 中使用 $(shell ...)
命令来执行 shell 命令,并将命令执行结果赋值给变量。例如,下面的例子中,我们使用 $(shell ...)
命令执行 uname -s
命令,并将结果赋值给变量 OS
:
OS := $(shell uname -s)
$(info The operating system is $(OS))
在上面的例子中,:=
表示使用变量的延迟赋值方式(makefile 中的变量有两种赋值方式,立即赋值和延迟赋值),$(shell ...)
命令用于执行 shell 命令,并将命令执行结果赋值给变量 OS
,所以这条命令输出的结果是:
The operating system is Linux
希望以上的解释能够帮助你了解如何在 Makefile 中输出变量。