0

在我的 C/C++ 代码中,我想根据不同的编译包含或不包含文件。

目前我使用这个:

#ifndef __x86_64__
    #include <myLib.h>
#endif

这给了我做平台是否是 32/64 位的可能性,但没有给我足够的自由。

我想将一个变量传递给我的makefile

make includeMyLib=1

并取决于此具有以下内容:

#ifndef includeMyLib
    #include <myLib.h>
#endif

你知道这样的事情是否可行?

4

1 回答 1

2

如果你使用 GNU make,你可以在Makefile:

ifdef includeMyLib
CFLAGS += -DincludeMyLib
endif

这将更改编译器用来添加#define includeMyLib.

于 2012-04-11T09:29:12.840 回答