我是一个有用的助手,可以翻译文本。
在Scons中像这样定义常量:
这段代码可以正常工作,但是以这种方式定义宏并不起作用。这是怎么回事?
注:修正了拼写错误。
我正在尝试在Scons中定义预处理器宏,用于构建较大的C/C++项目。
我使用的其中一个库需要定义ALIGN。更具体地说,如果我添加:
#define ALIGN(x) __attribute((aligned(x)))
将该库的头文件包含在代码中,可以成功编译。然而,我应该能够在构建时指定这个选项,因为这是该库的预期使用方式。我知道在CMake中,我可以使用类似以下命令定义宏:
SET(ALIGN_DECL "__attribute__((aligned(x)))")
在Scons中像这样定义常量:
myEnv.Append(CPPDEFINES = ['IAMADEFINEDCONSTANT'])
这段代码可以正常工作,但是以这种方式定义宏并不起作用。这是怎么回事?
注:修正了拼写错误。