Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/cmake/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
CMake忽略了“这一点”;“将警告视为错误”;生成Windows项目时(/WX)_Cmake - Fatal编程技术网

CMake忽略了“这一点”;“将警告视为错误”;生成Windows项目时(/WX)

CMake忽略了“这一点”;“将警告视为错误”;生成Windows项目时(/WX),cmake,Cmake,我的CMake版本是3.18.0-rc2。在我的项目的CMakeLists.txt中,我有以下几行代码,它们用于提高警告级别,并将所有警告视为错误: if(MSVC) add_compile_options(/W4 /WX) add_link_options(/W4 /WX) else() add_compile_options(-Wall -Wextra -pedantic -Werror -Wl,--fatal-warnings) endif() 到目前为止,我只能

我的CMake版本是
3.18.0-rc2
。在我的项目的CMakeLists.txt中,我有以下几行代码,它们用于提高警告级别,并将所有警告视为错误:

if(MSVC)
    add_compile_options(/W4 /WX)
    add_link_options(/W4 /WX)
else()
    add_compile_options(-Wall -Wextra -pedantic -Werror -Wl,--fatal-warnings)
endif()
到目前为止,我只能在Windows上进行测试——如果将来我们尝试在其他平台上编译,那么非MSVC选项就在那里

当我使用CMake生成Visual Studio项目并检查设置时,警告级别被适当设置为
/W4
,但
/WX
未启用-它被设置为
/WX-


我知道
add\u compile\u options()。然而,似乎无论我做什么,
/WX
都不受尊重。有什么办法可以解决这个问题吗?

我无法重现这个问题。您的项目中可能有其他内容影响了
/WX
设置,或者您的
add\u compile\u options
命令设置在错误的范围内,以便按预期正确更新目标属性。你能提供一个例子来说明这个问题吗?你是对的,在一个关闭了
/WX
的项目的依赖关系中隐藏了一些东西。很高兴我没有完全发疯,那样的话。我也有同样的问题。我无法复制这个。您的项目中可能有其他内容影响了
/WX
设置,或者您的
add\u compile\u options
命令设置在错误的范围内,以便按预期正确更新目标属性。你能提供一个例子来说明这个问题吗?你是对的,在一个关闭了
/WX
的项目的依赖关系中隐藏了一些东西。很高兴我没有完全发疯,我也有同样的问题。