Visual studio 斯芬特赢了';不能通过cmake编译
我尝试使用cmake为Visual Studio 2010和/或2015进行编译。 项目文件已创建,但Visual Studio向我显示以下错误消息:Visual studio 斯芬特赢了';不能通过cmake编译,visual-studio,cmake,Visual Studio,Cmake,我尝试使用cmake为Visual Studio 2010和/或2015进行编译。 项目文件已创建,但Visual Studio向我显示以下错误消息: Error 1 error D8021: invalid numeric argument '/Werror' E:\git\sfntly\cpp\Build\cl sfntly 我认为这是因为CMakeList.txt的这一部分: set(GCC_OR_CLANG ((CMAKE_CXX_COMPILER_ID MATCHES "C
Error 1 error D8021: invalid numeric argument '/Werror' E:\git\sfntly\cpp\Build\cl sfntly
我认为这是因为CMakeList.txt的这一部分:
set(GCC_OR_CLANG ((CMAKE_CXX_COMPILER_ID MATCHES "Clang") OR CMAKE_COMPILER_IS_GNUCXX))
...
if(GCC_OR_CLANG)
add_definitions(-D__wur=__attribute__\(\(warn_unused_result\)\) -Wall -Werror -fno-exceptions)
endif(GCC_OR_CLANG)
CMAKE进入GCC/CLANG块并添加特定于GCC的编译器标志,这当然是visualstudio不知道的
项目文件包含以下附加选项:
<AdditionalOptions> /Zm1000 -g -fno-inline -fno-omit-frame-pointer -fno-builtin -Werror -fno-exceptions %(AdditionalOptions)</AdditionalOptions>
/Zm1000-g-fno inline-fno省略帧指针-fno内置-Werror-fno异常%(附加选项)
有人知道cmake文件有什么问题吗 set命令无法处理“((CMAKE_CXX_COMPILER_ID匹配“Clang”)或CMAKE_COMPILER_IS_GNUCXX))参数。传递给set命令的任何内容都被解释为字符串。这些参数适用于if命令,如果GCC_或_CLANG变量的计算结果是这样的话,您可以将其设置为TRUE。谢谢,似乎可以工作,但无论如何项目都不会编译。。。其他几个例外。。。现在将尝试gcc。。。