You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Visual Studio的launch.vs.json中引用当前CMake构建类型?

在Visual Studio 2022的launch.vs.json中引用CMake构建类型的方法

注意:此问题与Visual Studio Code无关,也与launch.json无关,仅针对Visual Studio及其launch.vs.json文件。

在VS2022的launch.vs.json文件中自定义调试目标时,你尝试用${cmake.buildType}引用当前CMake构建类型,但该变量并非VS认可的有效变量,因此会报错Var:${cmake.buildType} failed evaluation。你的原配置如下:

{
  "version": "0.2.1",
  "defaults": {},
  "configurations": [
    {
      "type": "default",
      "project": "CMakeLists.txt",
      "projectTarget": "MyProgram.exe (app\\MyProgram\\MyProgram.exe)",
      "name": "MyProgram.exe (app\\MyProgram\\MyProgram.exe)",
      "environment": [
        {
          "name": "PATH",
          "value": "D:\\my-dlls-for-build-type-${cmake.buildType}"
        }
      ]
    }
  ]
}

解决方法

你可以使用以下两个官方支持的变量之一来获取当前CMake构建类型:

  1. ${buildType}:直接返回当前构建类型(如Debug、Release、RelWithDebInfo等)
  2. ${cmake.configuration}:与${buildType}功能完全一致,同样对应当前CMake的构建配置

修改后的environment配置示例:

"environment": [
  {
    "name": "PATH",
    "value": "D:\\my-dlls-for-build-type-${buildType}"
  }
]

补充说明

Visual Studio的launch.vs.json变量体系和VS Code的launch.json不同,必须使用VS自身定义的CMake相关变量,上述两个变量均可正常识别当前构建类型。

内容的提问来源于stack exchange,提问作者Arno

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.10 23:50:54