原创作者:郑同学的笔记
原文链接:https://zhengjunxue.blog.csdn.net/article/details/151869354

一、Windows SDK和Visual Studio Build Tools

1. Windows SDK (Software Development Kit)

  • 1.1、它是什么?:Windows SDK 是一套头文件(Headers)、库文件(Libraries)、元数据、工具和文档的集合。

  • 1.2、它的作用?:它为你提供了编写Windows应用程序所需的“建筑材料”。例如,如果你想调用一个Windows API(如 MessageBox 或 CreateFile),这些函数的声明在头文件里,其实现则在库文件中。它还包含像 rc.exe(资源编译器)这样的工具。

  • 1.3、核心内容:
    Windows.h 等头文件
    Kernel32.lib, User32.lib 等库文件
    调试工具(如WinDbg)
    文档和示例代码
    没有Windows SDK,你就不知道如何与Windows操作系统对话。

2. Visual Studio Build Tools

  • 2.1、它是什么?:Visual Studio Build Tools 是 编译器、链接器和其他核心构建工具 的独立安装包。它的核心是“引擎”。

  • 2.2、它的作用?:它负责将你写的源代码(C++, C#等)编译成目标文件,再链接上SDK提供的库文件,最终生成可执行的程序(如.exe或.dll)。它包含了 cl.exe(C++编译器)、link.exe(链接器)、msbuild.exe(项目构建系统)等。

  • 2.3、核心内容:
    cl.exe (C/C++ 编译器)
    link.exe (链接器)
    msbuild.exe (构建平台)
    C# 编译器 (csc.exe)
    必要的库和框架(如 CRT 运行时库)

没有Build Tools,你就有再多的“建筑材料”(SDK)也无法把它们“建造”成一个可用的程序。

特性 Windows SDK Visual Studio Build Tools
角色 建筑材料 (头文件、库) 建造引擎 (编译器、链接器)
主要内容 Windows.h, *.lib, 文档, 工具 cl.exe, link.exe, msbuild.exe
关系 不包含 Build Tools 安装时可选择包含Windows SDK(部分sdk,不包括windows cdb)
必要性 开发Windows程序必需 编译c++代码必需

二、安装Visual Studio Build Tools 后没有找到调试工具(Windows Debugging Tools)

Visual Studio Build Tools 的默认安装确实不会包含 Windows 调试工具(WinDbg, CDB 等),因为它们属于 Windows SDK 的一个可选子组件,即使在安装 SDK 时也需要手动勾选。

  • 方法一:通过 Visual Studio Installer 添加(推荐)
    点击:“单个组件”。
    在右侧的搜索框中输入 “调试工具” 或 “Windows Debugging Tools”

在Visual Studio Installer(vs2022 Installer中没有找到Windows Debugging Tools,其他版本的Visual Studio Installer大家可以自己验证下)

  • 方法二:直接使用 Windows SDK 安装程序
    分别可以在线安装或者离线安装
    在这里插入图片描述

三、如何在 Qt Creator 中配置?

前提:安装完Windows SDK和Visual Studio Build Tools

一旦 cdb.exe 安装成功,你就可以在 Qt Creator 中配置 MSVC 套件使用它:
打开 Qt Creator,进入 工具 -> 选项 -> Kits -> Kits 标签页。
选择你已配置好的 MSVC 套件(例如 Desktop Qt %{Qt Version} MSVC2017 64bit)。
在 调试器 一栏中,点击“浏览…”按钮。
导航到上述路径(C:\Program Files (x86)\Windows Kits\10\Debuggers\x64\),选择 cdb.exe。
点击“确定”保存配置。

在这里插入图片描述

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐