首页 > 解决方案 > 无法在 CMakeLists.txt 中设置 CMAKE_WARN_DEPRECATED

问题描述

我正在构建 Googletest 作为我的代码的依赖项。不幸的是,Googletest 需要非常旧版本的 CMake,这会触发大量弃用警告。我想摆脱他们。

我可以通过如下命令行标志成功隐藏警告:

cmake -Wno-deprecated ..
cmake -DCMAKE_WARN_DEPRECATED=OFF ..

但是,我更愿意在 CMakeLists.txt 中进行设置。但我不确定如何指定。以下两个命令没有帮助:

set(CMAKE_WARN_DEPRECATED OFF)
set(CMAKE_WARN_DEPRECATED OFF CACHE BOOL)

有任何想法吗?另外,有没有办法在有限的范围内设置该设置,例如一个子目录?

标签: cmake

解决方案


发现了。一点额外的标志就可以了:

set(CMAKE_WARN_DEPRECATED OFF CACHE BOOL "" FORCE)

不确定这是否是推荐的方式。


推荐阅读