面向零基础的编程辅导教程

写程序,学编程,一对一辅导,代码调试Debug 微信:ittutor QQ:14061936

C++ VSCode远程Linux调试Debug配置

要在VS Code上进行远程Linux调试,你可以按照以下步骤进行配置:

前提条件:

  • 确保你已在本地安装了VS Code。
  • 确保你的本地计算机和远程Linux机器之间可以进行网络通信。

步骤:

  1. 在本地计算机上安装Remote Development插件:

    • 打开VS Code并导航到扩展面板(Extensions)。
    • 搜索并安装 “Remote Development” 插件。
    • 安装完毕后,重启VS Code。
  2. 连接到远程Linux机器:

    • 打开VS Code,并点击左下角的“远程窗格(Remote Explorer)”图标。
    • 点击顶部的 “+ Connect to Host” 按钮。
    • 输入远程Linux机器的SSH连接信息,如主机名、用户名和密码。
    • 等待连接成功后,你将在 “Remote - SSH” 窗格中看到远程Linux机器的文件列表。
  3. 创建C++项目:

    • 在远程Linux机器上创建或打开一个C++项目文件夹,并将C++代码文件放入其中。
  4. 配置调试器:

    • 在VS Code中,打开C++源代码文件。
    • 打开调试面板(Debug)并点击顶部的齿轮图标以配置调试器。
    • 选择 “C++ (GDB/LLDB)” 作为调试环境。
    • 在 .vscode 文件夹中创建一个 launch.json 文件,如果已经存在,则编辑它。
    • 根据远程Linux机器的配置,配置 launch.json 文件中的 “program”、“cwd” 和 “remoteRoot” 等属性,以指定可执行文件路径、工作目录和远程根目录。
  5. 开始调试:

    • 在VS Code中设置断点或使用其他调试命令。
    • 通过点击顶部的 “Start Debugging” 按钮(通常是绿色的播放按钮)来启动调试会话。
    • 调试会话将连接到远程Linux机器,并在断点处中断,允许你逐步调试代码。

通过以上步骤,你就可以在VS Code上进行远程Linux的C++调试了。

//tasks.json
{
	"version": "2.0.0",
	"tasks": [
		{
			"type": "shell",
			"label": "test1",
			"command": "g++",
			"args": [
				"-g",
				"a.cpp",
				"-o",
				"a.out"
			]
		}
		
	]
}

 

//launch.json
{
    "version": "0.2.0",
    "configurations": [
      {
        "name": "C/C++ Runner: Debug Session",
        "type": "cppdbg",
        "request": "launch",
        "args": [],
        "stopAtEntry": false,
        "cwd": "${workspaceFolder}",  
        "environment": [],
        "program": "${workspaceFolder}/a.out",
        "internalConsoleOptions": "openOnSessionStart",
        "MIMode": "gdb",
        "miDebuggerPath": "/usr/bin/gdb",
        "externalConsole": false,
        "setupCommands": [
          {
            "description": "Enable pretty-printing for gdb",
            "text": "-enable-pretty-printing",
            "ignoreFailures": true
          }
        ],
        "preLaunchTask": "test1" 
      }
    ]
  }
  

主要launch.json里的preLaunchTask的值必须和tasks.json的里label一致,否则不能自动编译。

上面的配置完成后,每次连接linux和打开远程目录都要输入密码,要在远程Linux机器上实现免密码连接,你可以使用SSH密钥对。以下是基本的步骤:

  1. 生成SSH密钥对:

    • 打开终端(Terminal)。
    • 进入本地用户目录,输入下面的命令一路回车,会生成一对文件,其中一个是.pub文件:
      ssh-keygen -t rsa
      
    • 直接把.pub文件的内容复制到linux用户目录/.ssh/authorized_keys里面并保存。
  2. 尝试免密码连接:

    • 运行以下命令尝试使用SSH连接到远程Linux机器(请用你远程机器的IP地址和用户名替换<remote_hostname><remote_username>):
      ssh <remote_username>@<remote_hostname>
      
    • 如果一切设置正确,你将能够直接登录到远程机器,而无需再次输入密码。

通过上述步骤,你应该能够实现在本地机器和远程Linux机器之间的免密码连接。

如果有问题,可以扫下面的微信远程服务。

 

C C++ Python Java MIPS Processing 程序编写 软件定制 远程教学 网络家教

写程序,学编程,一对一辅导,代码调试Debug 微信:ittutor QQ:14061936

Copyright 小艾米编程 鲁ICP备18032308号-1