我有一个 CMakeLists.txt,其中包含以下内容,但无法修改:
set(BUILD_SHARED_LIBS ON)
Run Code Online (Sandbox Code Playgroud)
我想使用命令行覆盖这个变量。我试过这个:
cmake -UBUILD_SHARED_LIBS -DBUILD_SHARED_LIBS=OFF ..
Run Code Online (Sandbox Code Playgroud)
但没有效果。有没有办法告诉 cmake 使用命令行中的值而不是这个值?
注意:我知道使用如下所示的缓存可以解决问题,但由于我无法编辑该文件,遗憾的是这不是一个选项:
set(BUILD_SHARED_LIBS ON CACHE BOOL "library build mode")
Run Code Online (Sandbox Code Playgroud)