当开发linux应用时,一般的开发环境配置为:windows上完成编码,linux上完成编译加调试。但此种配置时,需要频繁的windows<=====>linux之间切换,对工作效率影响极大。vscode的debug特性完美的解决了这个问题,同时支持launch(启动调试)和attach(挂载调试)。
要求
vscode >= 1.35
安装vscode
https://code.visualstudio.com/
安装插件
server端安装openssh-server
1yum install openssh-serverclient端安装openssh-client
win版本>=win10:自带,不需要安装;
win版本<win10:安装git,包含ssh-client(https://git-scm.com/download)配置Linux无密码登录
1
2
3
4#生成公私钥 ssh-keygen -C "your_email@example.com" #-C用于设置注释 #将公钥拷贝到服务器 ssh-copy-id your_key.pub root@YOUR-SERVER-IP配置 - .vscode/launch.json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64{ // 使用 IntelliSense 了解相关属性。 // 悬停以查看现有属性的描述。 // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387 "version": "0.2.0", "configurations": [ { // 启动进程并调试 "name": "Launch", "type": "cppdbg", "request": "launch", // 程序启动路径 "program": "${workspaceFolder}/output/bin/adns", // 程序启动参数 "args": [ "-f", "${workspaceFolder}/output/etc/adns.conf" ], "stopAtEntry": false, "cwd": "${workspaceFolder}", // 环境变量设置 "environment": [ { "name": "LD_LIBRARY_PATH", "value": "/usr/local/lib/:$LD_LIBRARY_PATH" } ], "externalConsole": false, "MIMode": "gdb", "setupCommands": [ { "description": "Enable pretty-printing for gdb", "text": "-enable-pretty-printing", "ignoreFailures": true } ] }, { // 挂载已启动的进程 "name": "Attach", "type": "cppdbg", "request": "attach", "program": "/root/zhaotao/adns-67/output/bin/adns", // 选择挂载的pid "processId": "${command:pickRemoteProcess}", "pipeTransport": { "pipeCwd": "", "pipeProgram": "/usr/bin/bash", "pipeArgs": [ "-c" ], "debuggerPath": "/usr/bin/gdb" }, "linux": { "MIMode": "gdb", "miDebuggerPath": "/usr/bin/gdb" }, // 指定源码路径 //"sourceFileMap": { // "/root/zhaotao/adns-67/src": "${workspaceFolder}/src" //} } ] }