【问题标题】:How to change cmake build directory in `cmake-kits.json` or `cmake-variants.json` of vscode如何在 vscode 的 `cmake-kits.json` 或 `cmake-variants.json` 中更改 cmake 构建目录
【发布时间】:2020-12-15 02:07:08
【问题描述】:
我想运行 cmake 并构建到不同的输出目录,这取决于 vscode 中不同的构建类型。
我知道在setting.json 中添加cmake.buildDirectory: "build/${buildType}" 可以解决这个问题,但是当有人更改某些配置时,setting.json 很容易更改,Git 不方便跟踪它。所以我想把这些设置移到cmake-kits.json或cmake-variants.json,可以吗?
非常感谢!
【问题讨论】:
标签:
c++
json
visual-studio-code
cmake
【解决方案1】:
关于 cmake-kits.json 或 cmake-variants.json 的知识。
我使用相关 CMakeLists.txt 或 .cmake 内部的 CMAKE_BUILD_TYPE,并设置目标属性,如 RUNTIME_OUTPUT_DIR 和 ARCHIVE_OUTPUT_DIR 和 LIBRARY_OUTPUT_DIR。使用 CMAKE_BINARY_DIR 并根据 CMAKE_BUILD_TYPE 添加您想要的路径。
同样可以使用CMAKE_BUILD_TYPE为其他非目标文件设置输出目录。
您应该确保为 CMAKE_BUILD_TYPE 设置一个默认值,以防您想像在“cmake”中那样从命令行运行 cmake。仅此而已,这样 cmake 脚本就不必假定您的意思是哪种类型。