6

美好的一天,我在 Windows 平台上使用 Cmake 构建系统构建了我的 Qt 项目,但是如果我在 cmake 文件中添加行:

add_definitions("-DUNICODE -D_UNICODE")
UNICODE 的定义不起作用(MINGW),只有当我使用 MSVC 编译器构建我的项目时才能正常工作。一段时间后,我找到了解决方法如何在调用 CMake 时定义变量,以便 qtcreator 知道它已定义?,此解决方案有效,但如果我使用本机 WINAPI 函数(如 CreateFile),则会出现编译错误,因为编译器选择了 CreateFileA 但我使用 w_char 并且我想使用 CreateFileW,这是因为宏 UNICODE 的定义出现在我之前配置文件。如何在 cmakefile 中定义 UNICODE 宏?

4

1 回答 1

9

您是否尝试过(注意缺少引号):

add_definitions(-DUNICODE -D_UNICODE)
于 2012-08-26T22:07:17.910 回答