makefile - 生成文件中 -DHAVE_CONFIG_H 的含义

标签 makefile

我开始学习makefile。查看输出,我看到很多情况:

g++ -DHAVE_CONFIG_H -I ...

什么是-DHAVE_CONFIG_H确切地?这个编译选项的作用是什么?

最佳答案

所有这些 -DHAVE_CONFIG_H做的是定义预处理器 token HAVE_CONFIG_H就像您拥有 #define HAVE_CONFIG_H 一样就在每个源文件的开头。

至于它的用途,这完全取决于源文件的其余部分(以及它包含的所有内容)。这就是您应该寻找以计算其效果的地方。

看起来可能意味着头文件 config.h可用并且应该包括在内,在这种情况下,您可能会在源文件中的某处找到以下序列:

#ifdef HAVE_CONFIG_H
    #include "config.h"
#endif

当您说它可用时,它将包含头文件。然而,这是我的假设,绝不是确切的效果,只是我将使用这样的预处理器符号的目的。

关于makefile - 生成文件中 -DHAVE_CONFIG_H 的含义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2438274/

相关文章:

android - 如何清理 AOSP 中的模块?

windows - 如何让Qt Creator的jom.exe复制带空格的路径中的文件?

c++ - 如何生成丢失的 #include 文件列表

linux - Makefile什么都不做

mysql - 升级到 5.6 后找不到 mysql/mysql.h

c - 为什么我的 Thrift (c_glib) 示例无法使用 "error: invalid conversion"进行编译?

c - Makefile 在 C 中使用 Main 构建多个程序

c - 制作文件问题?

arrays - 如何在Makefile中将变量列表用作目标?

c++ - 使用 Automake 进行单元测试