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

VSCode的远程连接LINUX并调试C++;

一/VSC 安装REMOTE SSH
输入用户名 IP
image

image
其中 VSCode的SSH配置文件(~/.ssh/config) 请设置好其中参数 如云服务器上的密钥 私钥路径

image

在VSC上远程为服务器安装 C/C++ CMake tool gdb等程序
sudo yum install gdb

二/简单工程 使用如下方法
编写构建脚本 和 调试脚本
tasks.json(编译配置)

{"version": "2.0.0","tasks": [{"label": "g++ build demo",  // 任务名称,在launch.json中引用"type": "shell","command": "g++",  // 使用g++编译器"args": ["-g",  // 生成调试信息"${workspaceFolder}/demo.cpp",  // 要编译的源文件路径"-o",  // 输出参数"${workspaceFolder}/demo"  // 输出的可执行文件名],"group": {"kind": "build","isDefault": true},"problemMatcher": ["$gcc"],  // 使用gcc的错误匹配器"presentation": {"reveal": "always"  // 编译时显示终端}}]
}

launch.json(调试配置

{"version": "0.2.0","configurations": [{"type": "cppdbg",  // C++调试类型"request": "launch",  // 启动调试"name": "调试 demo.cpp",  // 调试配置名称"program": "${workspaceFolder}/demo",  // 可执行文件路径"args": [],  // 程序参数,如果没有就留空数组"stopAtEntry": false,  // 是否在程序入口暂停"cwd": "${workspaceFolder}",  // 工作目录"environment": [],  // 环境变量"externalConsole": false,  // 使用VSCode内置终端"MIMode": "gdb",  // 使用gdb调试器"setupCommands": [{"description": "为 gdb 启用整齐打印","text": "-enable-pretty-printing","ignoreFailures": true}],"preLaunchTask": "g++ build demo",  // 调试前先执行编译任务"miDebuggerPath": "/usr/bin/gdb"  // gdb路径,保持默认}]
}

三/大型工程的编译与调试

第一步:安装CMake Tools扩展
确保已在远程服务器上安装:按 Ctrl+Shift+X打开扩展面板 搜索"CMake Tools"(由Microsoft发布)
点击"在SSH: [您的IP]上安装" 安装后可能需要重新加载窗口

第二步:配置CMake源目录
由于CMakeLists.txt不在根目录,需要手动配置源目录:通过命令面板配置 按 Ctrl+Shift+P打开命令面板 输入"CMake: Select a Kit" → 如果弹出选择,选择GCC

第三步:选择Kit(编译器)
设置好源目录后,手动选择Kit:按 Ctrl+Shift+P 输入"CMake: Select a Kit"
会弹出编译器列表,选择: GCC for x86_64-linux-gnu(通常显示类似"GCC 9.4.0 x86_64-linux-gnu")或者您服务器上安装的GCC版本
如果没有编译器选项,说明需要安装gcc:

第四步:选择构建类型
选择Kit后:按 Ctrl+Shift+P 输入"CMake: Select Variant" 选择"Debug"(用于调试)

image

http://www.jsqmd.com/news/134911/

相关文章:

  • GLM-4.7 与 MiniMax M2.1 实测上线免费使用:国产大模型的 “工程化 + 长周期” 双赛道落地
  • 为什么顶尖开发者都在悄悄试用Open-AutoGLM PC?(内部测试数据首次公开)
  • python基于hadoop大数据的心脏病患者健康数据分析系统_pycharm django vue flask
  • 2025年末DeepSeek优化选型指南:语义深耕下的GEO服务商价值锚点 - 品牌推荐排行榜
  • 显存不足导致崩溃?Open-AutoGLM推理性能瓶颈与4种突破方案
  • 2026版网络安全工程师考证指南:从零基础入门到精通,收藏即通关
  • CI/CD流水线中的测试钩子:如何优雅地实现“失败快速反馈”?
  • ubuntu24.04的安装时内核安装失败的解决办法
  • 【Java毕设源码分享】基于springboot+爬虫+数据可视化高考志愿智能推荐系统(程序+文档+代码讲解+一条龙定制)
  • 基于风险驱动的测试策略制定
  • #【数据结构课程设计】随机迷宫生成算法:三种算法对比与实现
  • 9个降AI率工具推荐!本科生高效降AIGC必备清单
  • python基于Hadoop的高校固定资产租赁管理系统研究与实现_hot14_pycharm django vue flask
  • 黑客为什么不攻击微信和支付宝?从快手入侵事件看透网络攻防的核心逻辑
  • 数据驱动测试进阶:如何用一套脚本覆盖千变万化的测试场景?
  • 重修vn.py笔记 之 二 : 回测
  • Java开发避坑指南:垂直AI工具凭什么碾压通用编程助手?
  • 网络安全要学到什么程度才好就业?新手入门前必读的入行指南建议收藏!
  • python基于的农产品预售商城 平台设计_v8557农户_pycharm django vue flask
  • AttributeError: WebElement object has no xxxxxxxxxxx
  • 基于python的演唱会阳光音乐厅订票系统_9z622_pycharm django vue flask
  • 2025年12月上海立式混合机,上海犁刀混合机,上海犁刀式混合机厂商推荐:聚焦企业综合实力与核心竞争力 - 品牌鉴赏师
  • 测试报告的数据可视化:让质量状况一目了然
  • 2025年末GEO优化赛道深度洞察:以全链路能力构筑生成式引擎认知占位 - 品牌推荐排行榜
  • Open-AutoGLM进阶之路,掌握这6项技能你也能成为专家
  • 基于python的电影城订票商城会员管理系统_ih133_pycharm django vue flask
  • 自动化测试报告美化实战:让领导一眼看懂的“高颜值”报告是这样生成的
  • 2025年终GEO优化深度洞察:聚焦DeepSeek排名优化,全域适配型服务商优选指南 - 品牌推荐排行榜
  • Open-AutoGLM连不上?,20年专家教你精准定位有效地址的4大策略
  • 网络安全和黑客有什么关系?现实中的黑客离我们近吗?