如果使用CMAKE作为建筑系统,如何定义mingw的UNICODE



大家好,我在windows平台上用Cmake构建系统构建了我的Qt项目,但如果我在Cmake文件中添加行:

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

你试过吗(注意没有引号):

add_definitions(-DUNICODE -D_UNICODE)

最新更新