1、安装vscode。

        进入https://code.visualstudio.com/即vsocde官网选择Windows x64版本下载并安装。

        安装过程中推荐勾选往右键菜单添加通过vscode打开文件夹的选项。

2、vsocde插件安装

        打开vscode,点击左侧菜单栏中拓展选项并安装下列插件

C/C++ Themes C/C++ C/C++ Clang Command Adapter C/C++ Extension Pack C/C++ Runner CMake CMake Tools cmake-format CMake Language Support CodeLLDB Better C++ Syntax Chinese (Simplified) (简体中文) Language Pack for Visual Studio Code Remote - SSH Remote - SSH: Editing Configuration Files Dev Containers Remote - Tunnels Remote Development Remote Explorer

完成插件安装后重启vscode。

3、配置ssh密钥

        打开cmd并运行ssh-keygen命令,连续按回车键直到运行结束,打开图中路径找到密钥。

        将id_rsa文件即私玥改为自己需要的文件名,如id_rsa_ubuntu14_server。将id_rsa.pub文件即公玥拷贝至远程Linux设备,在远程Linux设备上运行下列命令,其中your_download_path为Linux端id_rsa.pub文件存放路径。

mkdir ~/.ssh

cd ~/.ssh

cat your_download_path/id_rsa.pub >> authorized_keys

4、vscode连接远程主机

        点击左侧菜单栏中远程资源管理器打开远程菜单,将鼠标放到ssh栏中点击出现的十字按钮

        在上方弹出的输入框内输入目标Linux服务器的IP地址并回车,在之后出现的选择SSH配置文件选项中选择第一条即C:\Users\Username\.ssh\config选项,选择后页面左下角出现弹窗,点击弹窗中的打开配置文件按钮。将config文件内容改为:

Host ubuntu14_server_c1

HostName 192.168.137.168

User htinvent

IdentityFile "C:\Users\Admin\.ssh\id_rsa_ubuntu14_server"

Host ubuntu14_server_c2

HostName 192.168.137.169

User htinvent

IdentityFile "C:\Users\Admin\.ssh\id_rsa_ubuntu14_server2"

        其中HostName为目标Linux服务器地址,User为存放公玥的Linux账户名,IdentityFile为私玥文件。保存更改后重启vscode。

        重启后再次点击左侧菜单栏中远程资源管理器打开远程菜单,展开SSH选项后出现配置文件中的连接名。将鼠标放在连接名上并点击出现的两个选项中的一个进行连接。之后在上方弹出的选项中分别选择Linux、continue。至此完成远程连接。

5、配置远程编译及调试

        vscode远程连接至目标主机后点击文件——打开文件夹,打开一个文件夹。创建一个main.cpp文件,内容为:

#include

using namespace std;

int main()

{

cout << "SSH" << endl;

return 0;

}

        点击左侧菜单栏中运行和调试打开调试菜单并点击运行和调试。

        点击弹出的选择栏中任意一项选项,之后弹出编译失败警告弹窗,点击终止按钮。回到资源管理器,应生成/.vscode/tasks.json文件。

        

 将tasks.json内容改为

{

"tasks": [

{

"type": "shell",

"label": "linux_make_debug",

"command": "${workspaceFolder}/cmd_debug.sh",

"args": [],

"problemMatcher": []

},

{

"type": "shell",

"label": "linux_debug_only",

"command": "${workspaceFolder}/empty.sh",

"args": [],

"problemMatcher": []

}

],

"version": "2.0.0"

}

点击左侧菜单栏中运行和调试打开调试菜单并点击创建launch.json文件按钮。

将 launch.json内容改为

{

"version": "0.2.0",

"configurations": [

{

"name": "C/C++: g++ linux_make_debug",

"type": "cppdbg",

"request": "launch",

"program": "${workspaceFolder}/bin/test",

"args": [], /**/

"stopAtEntry": false,

"cwd": "${workspaceFolder}/bin",

"environment": [],

"externalConsole": false,

"MIMode": "gdb",

"miDebuggerPath": "/usr/bin/gdb",

"setupCommands": [

{

"description": "为 gdb 启用整齐打印",

"text": "-enable-pretty-printing",

"ignoreFailures": true

},

{

"description": "将反汇编风格设置为 Intel",

"text": "-gdb-set disassembly-flavor intel",

"ignoreFailures": true

}

],

"preLaunchTask": "linux_make_debug",

},

{

"name": "C/C++: g++ linux_debug_only",

"type": "cppdbg",

"request": "launch",

"program": "${workspaceFolder}/bin/test",

"args": [], /**/

"stopAtEntry": false,

"cwd": "${workspaceFolder}/bin",

"environment": [],

"externalConsole": false,

"MIMode": "gdb",

"miDebuggerPath": "/usr/bin/gdb",

"setupCommands": [

{

"description": "为 gdb 启用整齐打印",

"text": "-enable-pretty-printing",

"ignoreFailures": true

},

{

"description": "将反汇编风格设置为 Intel",

"text": "-gdb-set disassembly-flavor intel",

"ignoreFailures": true

}

],

"preLaunchTask": "linux_debug_only",

}

]

}

        其中program需要根据项目实际生成可执行文件名称修改,其中args为运行可执行文件时的附加参数。

        在最外层分别创建cmd_debug.sh及empty.sh,将cmd_debug.sh的内容改为自己的编译指令如:

mkdir bin

g++ main.cpp -o bin/test -g

        可以根据自己的编译工具自由发挥,只要目标文件名和 launch.json保持一致即可。

6、测试

        在main.cpp中打上断点并按照图示开始编译及调试。

精彩链接

评论可见,请评论后查看内容,谢谢!!!
 您阅读本篇文章共花了: