VS Code 忽略 CMakePresets.json,始终将 CMAKE_BUILD_TYPE 设置为 Debug

问题描述 投票:0回答:1

我试图了解如何使用 VS Code 设置 C++ 项目。我来自 Jetbrains,仅供参考。
我正在尝试使用 CMakePresets.json 在 VS Code 中设置 CMAKE_BUILD_TYPE,但它没有按预期工作。

设置:

  • 带有 CMake 工具扩展的 VS Code
  • Windows 10

CMakePresets.json(简化):

{    
    "version": 8,     
    "configurePresets": [         
     {             
        "name": "release",             
        "generator": "Ninja",             
        "cacheVariables": {                 
            "CMAKE_BUILD_TYPE": {                     
            "type": "STRING",                     
            "value": "Release"                 
            }             
        }         
     }] 
} 

问题:VS Code 始终使用此命令行:

cmake.exe -DCMAKE_BUILD_TYPE:STRING=Debug ...

尝试过:

  • 清除 CMake 缓存并重新配置
  • 选择“释放”预设
  • 修改settings.json:
{       
     "cmake.useCMakePresets": "always",       
     "cmake.configureSettings": { 
        "CMAKE_BUILD_TYPE": 
        "Release" 
      }   
}   
  • 更改 VS Code 状态栏中的构建变体
    这些都不起作用。 VS Code 始终默认为“调试”。

问题:

如何让 VS Code 尊重 CMakePresets.json 中的 CMAKE_BUILD_TYPE?

c++ visual-studio-code cmake
1个回答
0
投票

如果您想更改构建类型、发布/调试,最好使用 cmake 工具扩展,而不是编辑 CMakePresets.json 文件。

Cmake 工具图标位于 vscode 的左侧面板上,如 this。如果您没有看到这一点,也许您还没有创建 CMakeLists.txt 文件。您可以按照cmake官方的快速入门指南来学习如何编辑CMakeLists.txt。

如果你没有看到CMake工具图标,但是你有CMakeLists.txt文件,你可以使用ctrl+shift+p打开vscode命令行,输入“cmake”,选择“cmake:configuration” .

单击左侧面板中的 CMake 工具图标,它看起来像this,您可以从这里更改构建类型。

还有一些其他命令,如 “cmake: configuation” 很有用,您可以尝试 ctrl+shift+p 搜索 “cmake: Run without debug”和“cmake: Debug” 来运行和调试您的项目。或者使用底部面板中的选项快速构建、调试、运行。

© www.soinside.com 2019 - 2024. All rights reserved.