-D<DEFINE>
:定义一个预处理器宏。例如,-DDEBUG
将定义一个名为 "DEBUG" 的宏。
-I<INCLUDE_PATH>
:指定额外的头文件搜索路径。可以使用该选项添加自定义的头文件目录。
-std=<STANDARD>
:指定要使用的 C++ 标准版本。例如,-std=c++11
或 -std=c++17
。
-Wall
:启用所有常见的警告。这将显示编译器中的大多数警告信息。
-Werror
:将警告视为错误,导致编译过程中的警告被视为失败。
-O<LEVEL>
:指定优化级别。常用的选项包括 -O0
(无优化)、-O1
(基本优化)、-O2
(更高级别优化)和 -O3
(最高级别优化)。
-g
:生成调试信息,以便进行调试。
-fPIC
:生成位置无关的代码,用于编译动态链接库(Shared Library)。
-fno-exceptions
:禁用异常处理支持。
example
externalNativeBuild {
cmake {
cppFlags "-std=c++11"
cppFlags "-DVERSION_NUMBER=1.2.3"
}
}
#define STRINGIFY(x) #x
#define VERSION_STRING STRINGIFY(VERSION_NUMBER)
const char* version = VERSION_STRING;