makefile中-DHAVE_CONFIG_H的含义

时间:2010-03-13 12:17:06

标签: makefile

我开始学习makefile。看看输出我看到很多次出现:

g++ -DHAVE_CONFIG_H -I ...

究竟是什么-DHAVE_CONFIG_H?这个编译选项的功能是什么?

1 个答案:

答案 0 :(得分:20)

所有-DHAVE_CONFIG_H所做的就是定义预处理器令牌HAVE_CONFIG_H,就像在每个源文件的开头都有#define HAVE_CONFIG_H一样。

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

看起来像它可能意味着头文件config.h可用且应该包含在内,在这种情况下,您可能会在源文件的某处找到以下序列:< / p>

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

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