-DQT_WEBKIT标志在g++中是什么意思?

What does the -DQT_WEBKIT flag mean in g ++?

同一个项目在不同版本的 OS 上用不同的标志组装。 这是什么旗帜?

第一个OS:

-g++ -c -pipe -g -D_REENTRANT -Wall -W -Wno-unknown-pragmas -DQT_WEBKIT -D_TESTR ...

其他OS:

+g++ -c -pipe -g -D_REENTRANT -Wall -W -Wno-unknown-pragmas -D_TESTR

-D 选项是一个 预处理器选项 并记录在 section 3.13 Preprocessor Options of the GCC Manual 中。 (您也可以随时 运行 gcc --helpg++ --help 来获得有关选项的帮助。)

-D<name>[=<value>] 选项 #define 使宏 <name> 具有值 <value>(或 1,如果值 <value> 是未提供)。

所以,在你的例子中,它把_REENTRANTQT_WEBKITD_TESTR三个宏定义为值1,换句话说,就是相当于

#define _REENTRANT 1
#define QT_WEBKIT 1
#define D_TESTR 1

添加到正在编译的文件中。