官方文档code.visualstudio.com
使用VSCode新推出的Remote功能来连接WSL或服务器进行开发. 可以在Windows上享受优秀的界面体验的同时使用Linux环境进行开发(还是要感谢无数的VSCode插件贡献者).
环境基础配置
- Visual Studio Code最新版本
注意点:
- 安装时需要勾选环境变量添加到
path
- 在插件中心安装
Remote-WSL
、Remote-SSH
、Remote Development
基础插件;
- WSL环境
注意点:
- 推荐使用
Ubuntu 18
, 其他没试过; - 安装成功之后进行初始化相关工作, 配置密码之类的;
使用WSL打开VSCode
- 打开WSL terminal(打开Power shell输入wsl/bash, 或者直接搜索Ubuntu打开);
- 找个想要打开的项目, 注意WSL和Win的目录结构不同, Windows的C盘在
/mnt/c
下面, 可以先切到工作目录; - 在命令行里敲
code .
, 第一次使用时, 会看到VS Code的组件被提示需要安装, 稍等一会儿, 这种情况只有首次使用会出现, 之后就可以直接使用code 文件夹
的方式使用VS Code打开, 并且是以Linux环境的模式Note: 如果code
这个命令无效的话, 需要在VS Code安装时把path添加到环境变量里去, 或者后期手动自己加. - 之后就可以看到VSCode的窗口出现了, 可以在下方看到VSCode正在以WSL方式打开文件夹的通知;
- 一旦完成之后, 下次可以直接在历史文件夹里打开项目, 或者从命令行里打开新项目, 以及VS Code里打开;
最近项目
:
VSCode Ctrl + O打开
:
命令行打开
:
开发配置实例一 C语言
使用WSL开发调试C语言的配置, 可以实现开发调试, 代码检查, 智能提示等功能, 并且调试的变量参数可以自定义, 能够更好的理解开发调试的过程.
基础环境要求
前提要求是WSL中安装了gcc(使用 sudo apt update和 sudo apt install gcc命令来安装, 以及在VSCode中安装C/C++开发插件.
建立基础文件
main.c
:
#include <stdlib.h>#include <stdio.h>// 头文件, 其中add函数和sub函数的定义在其中#include "func1.h"#include "func2.h"int main(int argc, char const *argv[]){int a = 10, b = 20;// 调用其他文件内定义的函数printf("a add b = %dn", add(a, b));printf("a sub b = %dn", sub(a, b));printf("hello worldn");return 0;}
依赖的头文件func1和func2函数文件
:
// func1.h: 函数定义extern int sub(int a, int b);// func1.c: 函数实现#include "func1.h"int sub(int a, int b){return a - b;}// func2.h: extern int add(int a, int b);// func2.c:#include "func2.h"int add(int a, int b){return a + b;}
添加调试配置
记得先打开main.c文件, 看下底边栏的信息, 确认是否被自动识别为C文件, 这一步很重要, 否则后面创建的配置会出问题(毕竟是编辑器, 不是IDE, 配置略微繁琐了些)
在Debug栏下创建launch.json
文件:
接下来选择配置
选择第二个gcc(因为我们只装了gcc )
可以看到目录中多了个.vscode
文件夹, 文件夹下有launch.json
文件, 这是VSCode的项目配置信息文件夹, 包含项目的配置和命令信息.
开始调试
打开main文件, 添加断点
按下微软的经典调试按钮F5
报错了, 提示有未定义的引用add和sub, 原因是这俩函数的实现不在main.c中, 默认的编辑命令在task.json
中只编译了main.c
修改为所有的.c文件, 正则匹配
接下来F5, 单步调试, 变量等等
命令行执行结果