VSCode的远程连接和CMAKE项目调试

本文详细介绍了如何使用Visual Studio Code(VSCode)进行远程开发,包括Windows和Ubuntu系统的配置步骤,强调了离线安装插件的方法。此外,还讲解了利用CMake构建和调试大型项目的过程,提供了CMakeList.txt和launch.json的配置示例,并列举了VSCode的常用调试快捷键,旨在帮助开发者提升工作效率。
摘要由CSDN通过智能技术生成

1 需要下载的插件

1.1 插件列表

在这里插入图片描述

1.2 插件离线下载方式

(1)下载网址微软github
(2)vscode插件下载都带有vscode-字段,例如c/c++插件下载地址https://github.com/microsoft/vscode-cpptools
(3)下载完成后在vscode的扩展中选择“从VISIX安装”
在这里插入图片描述

2 VS Code远程开发

2.1 VS code 远程开发所需插件

在这里插入图片描述

2.2 远程开发环境配置

2.2.1 windows

(1)下载完远程开发插件后,按下快捷键Ctrl+Shift+P打开命令行
(2)输入ssh user@ip命令,回车弹出如下界面
在这里插入图片描述
(3)第一配置请选择“Setting Specify a custom…”选项,修改config文件路径。不要选择默认config文件路径(c:\users\username.ssh\config),否则会出现无法连接的问题。
(4)在电脑内的某个位置创建一个txt文件,将名字修改为“config”(没有.txt后缀),并将改文件的权限修改为所有用户都可以完全控制
(5)在设置界面找到extension(扩展) -> Remote.ssh ->Remote.ssh:config file,并在输入框内输入新的config文件完整路径,修改完成后关闭设置
(6)Ctrl+Shift+P打开命令行
(7)输入ssh user@ip命令
(8)选择刚刚配置的config文件
(9)VS Code会提示选择远程主机平台和输入密码
(10)成功连接后,VS Code会配置远程主机,这一阶段需要较长的时间
(11)配置完成后使用离线安装的方式将c++和Code Runner安装到远程主机上(因为在线方式会因网络问题出现无法下载的情况)

2.2.2 Ubuntu

(1)与上述2.1节相同去掉3-7步
(2)免密登录
待填写

3 VS Code+CMake大型项目运行和调试

3.1 CMakeList.txt构建大型项目

https://blog.csdn.net/lazy_x/article/details/118677616?spm=1001.2014.3001.5501

3.2 CMake和launch.json结合调试大型项目

(1)在项目的c文件中添加断点
(2)保存所有文件,并将界面切换到主函数所在界面(重要步骤,否则不生成task.json)
(3)点击VS Code界面的小虫子图标
在这里插入图片描述
(4)点击“create a launch.json file",选择编译所使用的编译器,之后会出现警告弹窗,直接将其关闭,VS Code自动生成launch.json
(5)在.vscode文件夹中创建tasks.json,然后将下列代码复制到tasks.json中替换源代码

{
    "version": "2.0.0",
    "options": {
        "cwd": "${workspaceFolder}/build/"
    },

    "tasks": [
        {
            "label": "cmake",
            "type": "shell",
            "command": "cmake",
            "args": [
                ".."
            ]
        },
        {
            "label": "make",
            "group":{
                "kind":"build",
                "isDefault":true
            },
            "dependsOn": ["cmake"],
            "command": "make",
            "args":[
            ]
        },
        {
            "label":"Build my project",
            "dependsOn":[
                "make"                
            ]
        }
    ]
}

(5)自动生成的launch.json如下所示。如果没有自动生成的话,也可以直接将下面代码直接复制到launch.json中,修改注释所标注的内容即可

{
    // 使用 IntelliSense 了解相关属性。 
    // 悬停以查看现有属性的描述。
    // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "name": "gcc-9 - 生成和调试活动文件",
            "type": "cppdbg",
            "request": "launch",
            "program": "${fileDirname}/${fileBasenameNoExtension}",  
            /*
            将program后的参数修改为可执行文件所在路径cmake默认在build中生成可执行程序
            所以可以将参数设置为${workspaceFolder}/build/....,其中workspaceFolder指代.vscode的上级目录
            */
            "args": [],
            "stopAtEntry": false,
            "cwd": "${fileDirname}",
            "environment": [],
            "externalConsole": false,
            "MIMode": "gdb",
            "setupCommands": [
                {
                    "description": "为 gdb 启用整齐打印",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": true
                }
            ],
            "preLaunchTask": "C/C++: gcc-9 生成活动文件",
            /*
                将preLaunchTask后的参数修改为"Build my project"
                即与tasks.json的最后一个lable对应
            */
            "miDebuggerPath": "/usr/bin/gdb"
        }
    ]
}

(6)注意将VSCODE的模式调整为debug模式重新生成调整位置在VS Code界面下方
在这里插入图片描述

3.3 VS Code常用快捷键

  • Ctrl+F5以非调试模式运行
  • F5以调试模式运行
    • F10 单步跳过
    • F11单步进入
    • Shift+F11单步跳出
    • F5继续
    • Shift+F5停止调试
  • 查找和替换
    • Ctrl+F 文件内查找
    • Ctrl+Shift+F 项目全局查找
    • Ctrl+H 替换
    • Shift+F12 快速查看函数/变量的所有引用
    • F12 转到定义(这边功能有BUG,对于C语言项目会转到函数声明位置)
    • F2 重命名变量或函数
  • 注释
    • Ctrl+/ 切换行注释
    • Shift+Alt+A 切换块注释
  • Shift+Alt+F 格式化文档(使得源码文档格式符合编程习惯)
  • Ctrl+Shift+P 打开VS Code命令行

4 参考文献

(1)https://www.jb51.net/article/207299.htm
(2)https://subingwen.cn/vscode/cpp-windows/#5-3-tasks-json

  • 4
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值