首页 > 解决方案 > Makefile.in 中的@CPPFLAGS@ 是什么意思?

问题描述

我有一个通过配置生成Makefile.am的Makefile.in文件。之后使用 automake Makefile.am 创建Makefile

现在我想在生成的 Makefile 中添加一个定义。问题是,在生成的 Makefile 中,我在变量CPPFLAGS中找到了一个标志列表,但在 Makefile.in 中 CPPFLAGS 的定义中,我发现只有一行以下列方式写入:

CPPFLAGS = @CPPFLAGS@

这是什么意思@CPPFLAGS@?以及如何在生成的 Makefile 中设置新标志?

标签: c++linuxmakefileconfigureautomake

解决方案


CPPFLAGS 代表 C 预处理器标志。

您可以将其设置为环境变量或通过命令行:

CPPFLAGS="-g -Wall -O0" automake

或者

CPPFLAGS="-g -Wall -O0" make

从 gnu Make 手册:

CPPFLAGS

Extra flags to give to the C preprocessor and programs that use it (the C and Fortran compilers).

推荐阅读