当前位置: 首页 > news >正文

CMake在VS中使用远程调试

选中CMakeLists.txt, 右键-添加调试配置-选中"C\C++远程windows调试"

之后将 aunch.vs.json文件改为如下所示:

CMake在VS中使用远程调试时,Launch.vs.json中远程调试设置 ,远程电脑开启VS专用的RemoteDebugger

{"version": "0.2.1","defaults": {},"configurations": [{"type": "default","project": "CMakeLists.txt","projectTarget": "DmnCnc.exe (NcCoreQt\\Debug\\DmnCnc.exe)","name": "DmnCnc.exe (NcCoreQt\\Debug\\DmnCnc.exe)"},{"type_Explain": "远程模式, 指定项目是 dll 还是 exe(默认为 .exe)","type": "remoteWindows","authenticationType_Explain": "指定远程连接的类型,可能值为 windows 和 none。 默认值为 windows。 此值应与在远程计算机上运行的远程调试器上指定的身份验证设置相匹配,无身份验证时选none","authenticationType": "none","name_Explain": "指定“启动项”下拉列表中条目的名称,可以改成自己方便识别的名字","name": "DmnCnc-Remote","project_Explain": "指定项目文件的相对路径.通常调试CMake项目时不需要更改此值","project": "CMakeLists.txt","projectTarget_Explain": "指定生成 project 时调用的可选目标.目标必须与“启动项”下拉列表中的名称匹配(不能错,为本地的exe文件).","projectTarget": "DmnCnc.exe (NcCoreQt\\Debug\\DmnCnc.exe)","remoteMachineName_Explain": "指定启动程序的远程计算机的名称","remoteMachineName": "192.168.5.5:4026","cwd_Explain": "远程系统上将运行程序的目录的完整路径","cwd": "${debugInfo.defaultWorkingDirectory}","program_Explain": "远程计算机上的程序可执行文件的完整路径。使用CMake时,宏${debugInfo.fullTargetPath}可用作此字段的值.","program": "${debugInfo.fullTargetPath}","deploy_Explain": "指定要部署的额外文件或目录","deploy": [],"deployDirectory_Explain": "项目输出自动部署到的远程计算机上的位置.默认为C:\\Windows Default Deploy Directory\\<name of app>","deployDirectory": "D://Remote//Debug//","disableDeploy_Explain": "指定是否取消应部署文件,例如pdb调试文件","disableDeploy": false,"args_Explain": "传递给程序的命令行参数","args": [],"env": {}}]
}

在启动项中将出现DmnCnc-Remote的选择项,启动即可进行远程调试,注意需要将其他相关dll复制到远程exe同目录下.

具体可参数微软官网介绍:

教程:在远程 Windows 计算机上调试 CMake 项目 | Microsoft Learn

Launch.vs.json 架构参考 (C++) | Microsoft Learn

通过 CMake 安装和使用包 | Microsoft Learn

http://www.xdnf.cn/news/876997.html

相关文章:

  • python实现合并多个dot文件
  • linux系统--iptables实战案例
  • 在本地电脑中部署阿里 Qwen3 大模型及连接到 Elasticsearch
  • if(!p)等价于 if(p==0)
  • 【学习笔记】Python金融基础
  • 猎板硬金镀层厚度:新能源汽车高压系统的可靠性基石
  • 压测软件-Jmeter
  • socket是什么
  • SQL进阶之旅 Day 14:数据透视与行列转换技巧
  • 综合案例:斗地主
  • Serverless 在商城活动页面的应用:快速扩缩容与成本控制——基于云函数的秒杀活动场景实践
  • 幂等性:保障系统稳定的关键设计
  • Sentry 的部署方式:自托管与 SaaS 服务
  • arduino D1 UNO R3 使用记录(保姆级教程)
  • CET6 仔细阅读 24年12月第三套-C1 恐惧这一块
  • 电商接口计费标准是什么?
  • FART 精准脱壳:通过配置文件控制脱壳节奏与范围
  • 【算法题】最长回文子串
  • 多线程与fork使用
  • 从繁琐到简易:3 款P图工具解锁图片编辑新体验
  • 在集成小刀knife4时报错找不到@EnableSwagger2WebMvc注解
  • 22. 括号生成【 力扣(LeetCode) 】
  • 蓝牙防丢器应用方案
  • hadoop集群单词统计(ssh与web)
  • AI助力Java开发:减少70%重复编码,实战效能提升解析
  • 如何在 git dev 中创建合并请求
  • 具备强大的数据处理和分析能力的智慧地产开源了
  • 【项目实践】SMBMS(Javaweb版)(二)登录功能
  • 《动手深度学习》8.2文本预处理—代码分析
  • Kafka消息队列笔记