多图警告

·引言

众所周知在Windows上开发会有很多奇奇怪怪的问题    ·超级难配的环境
   ·神秘的路径
   ·编译器对Unicode支持不好

但装双系统/虚拟机又比较不方便,有什么在windows上开发又比较优雅的方法呢,答案就是wsl2 即 Windows Subsystem for Linux

· 安装

TIPS: 请先确保你的电脑已开启虚拟化(可在任务管理器-性能-cpu查看),若未开启,请自行搜索在bios中开启

image.png

1,首先以管理员身份打开cmd/powershell,输入wsl --install

windows便会自动下载wsl环境,当安装完成后,重启电脑

2,安装所需的linux发行版(以Debian为例)

1
wsl --install Debian

需要其他发行版可通过wsl --list --online查看安装

image.png
安装完成后,会要求你设置Linux的用户名和密码
image.png
设置完成后便会自动进入熟悉的Debian啦

· 安装环境

1,root权限

由于wls的默认用户并没有root权限,图方便就先sudo su取得权限
image.png
在这里输入刚刚设置的密码,就进入了root用户模式

2,更换软件源

默认的debian官方镜像源国内方向并不大友好,所以切换为国内阿里云源

TIPS: 由于默认并没有安装ca-certificates,所以如果替换其他源,请使用http而非https

1
2
3
4
5
cat >
deb http://mirrors.aliyun.com/debian/ trixie main
deb http://mirrors.aliyun.com/debian/ trixie-updates main
deb http://mirrors.aliyun.com/debian/ trixie-backports main
EOF

更新软件源

1
apt update

3,安装常用环境

1
apt install gdb build-essential python3 python3-pip git -y

此处按自己需要,这里安装了C/C++&Python

· vscode梦幻联动

1,安装vscode wsl扩展

在vscode扩展搜索ms-vscode-remote.remote-wsl并安装image.png
安装完成后便可以在左侧远程资源管理器处看到wsl了
image.png
点击连接后,可以看到左下角已经显示连接到远程显示的是wsl:Debian了
image.png

2,替换vscode默认终端

使用 ctrl+,打开设置,搜索terminal.integrated.defaultProfile.windows,修改为wsl即可

image.png

3,vscode&wsl联动的两种方法

(1)从vscode调用wsl: 同上,在左侧远程资源管理器处点击连接

(2)从wsl打开vscode: 在wsl中目录输入 code . 后vscode便会打开到该文件夹(处于非root用户模式)

4,路径的相互映射

windows文件在wsl默认映射在 /mnt/
wsl文件在windows可以通过资源管理器打开\\wsl$\读取

TIPS: 若要从windows修改wsl文件,需要在wsl中编辑 /etc/wsl.conf,加入

1
2
3
[automount]
enabled = true
metadata = true

在cmd/powershell执行

1
wsl --shutdown

重启wsl即可

5,vscode环境配置

由于wsl插件环境也独立于windows,所以在连接上wsl后,vscode的插件得重新安装,连接上wsl,打开插件列表,点击在wsl安装即可
image.png