【dev on wsl2】wsl2 with vscode简单配置

这篇具有很好参考价值的文章主要介绍了【dev on wsl2】wsl2 with vscode简单配置。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

wsl2 with vscode简单配置

正文开始@Assassin

1. 安装wsl2:

1.1 安装方式选择:

安装wsl2一般来说有三种方式:

  • cmd/powershell 命令行安装(建议管理员模式)
  • microsoft store 安装
  • microsoft 官网安装

ps: win + R调出运行框,输入"winver" 查看 Windows 版本及内部版本号

① 命令行安装wsl的先决条件是必须运行 Windows 10 版本 2004 及更高版本(内部版本 19041 及更高版本)或 Windows 11。 命令行安装默认会装在C盘。

② Microsoft Store最恶心的就是可能会打不开,我的就打不开-_-|,目前还没找到合适的解决方法。微软商店安装默认会安装到C盘。

③ Microsoft官网下载,目前来说,这是唯一不会出差错的方法,不过下载速度太慢了,我挂了代理也还是很慢,速度不到500KB/s。可以自行选择安装的路径。

由于我的电脑版本满足命令行安装的最低要求,故采用命令行的方式进行安装:
【dev on wsl2】wsl2 with vscode简单配置

1.2 命令行安装:

环境准备:

以管理员权限启动powershell/cmd,然后输入以下命令启用虚拟机平台:

Enable-WindowsOptionalFeature -Online -FeatureName VirtualMachinePlatform

【dev on wsl2】wsl2 with vscode简单配置

以管理员权限启动powershell/cmd,然后输入以下命令启用linux子系统功能:

Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux

【dev on wsl2】wsl2 with vscode简单配置
wsl --install默认会安装wsl1,使用以下命令设置wsl2为默认下载版本:

wsl --set-default-version 2

ps:以下命令也是同样的功能:

# 启用 WSL
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
# 启用 VMP
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
# wsl --install默认会安装wsl1,使用以下命令设置wsl2为默认下载版本
wsl --set-default-version 2

若出现报错,下载wsl2内核更新包并安装。


更为直观便捷的方法是直接在"windows功能"中启用标记的功能,也是同样的效果:
【dev on wsl2】wsl2 with vscode简单配置
三种方式任选其一即可。


用管理员模式打开 cmd/powershell,使用命令行进行wsl2的安装:

wsl --install

执行上述命令会默认下载ubuntu,若想指定版本安装,可以执行如下命令:

wsl --install -d <DistroName>

查看当前linux可用发行版列表:

wsl --list --online

【dev on wsl2】wsl2 with vscode简单配置
以下载Debian作为演示:
【dev on wsl2】wsl2 with vscode简单配置
这中间有个小插曲,好像并没有下载成功,wsl -l -v列出来的信息没有debian,使用wsl也会报错,提示未在BIOS中启用虚拟化:
【dev on wsl2】wsl2 with vscode简单配置
google了一番之后,可以初步确定是我本机上使用了VMware虚拟机的缘故,之前使用docker的时候也是因为Hyper-v不能打开虚拟机,因为Vmware自带虚拟化内核,二者会产生一定的冲突,于是我就把Hyper-v关闭了。

解决方法如下:

开启Hyper-v : 在cmd/powershell中执行以下命令行(建议管理员模式):

bcdedit /set hypervisorlaunchtype auto

切换之后reboot重启电脑应该就ok了

ps:
关闭Hyper-v : 在cmd/powershell中执行以下命令行(建议管理员模式):

bcdedit /set hypervisorlaunchtype off

若要使用虚拟机需要关闭Hyper-v。


开启了Hyper-v之后就能正常启动Debian了,完事儿
【dev on wsl2】wsl2 with vscode简单配置
正常使用Debian操作系统:
【dev on wsl2】wsl2 with vscode简单配置
更改wsl版本:
要是安装了wsl1,可以通过wsl --set-version更换发行版的版本:

wsl --set-version <distribution name> <versionNumber>

distribution name为发行版的名称,versionNumber为版本。
比如如果下载了Ubuntu-20.04 wsl1,可以执行以下命令更改到wsl2:

wsl --set-version Ubuntu-20.04 2

设置默认linux发行版:
我主机上默认的linux发行版是带 * 的Ubuntu-20.04:
【dev on wsl2】wsl2 with vscode简单配置
将默认linux发行版改为刚刚下载的Debian:

wsl --set-default Debian
#可简写为 wsl -s <Distribution Name>

【dev on wsl2】wsl2 with vscode简单配置

2. 搭配vscode:

2.1 新建用户&&远程连接vscode

下面使用自己熟悉的ubuntu来进行演示。

一般来说,操作linux平台都不直接使用root用户,所以这里演示添加普通用户的操作。

添加普通用户:
wsl2中添加普通用户的操作与真正的linux环境还是有些不一样的,自己遇到了一些坑,比如我要新建一个名为xiaoming的普通用户:

root@KevinGeorge:~# useradd xiaoming
root@KevinGeorge:~# passwd xiaoming

新建了xiaoming用户,并为其设置了密码,但是登录不成功,提示no such file or directory
【dev on wsl2】wsl2 with vscode简单配置
ls -l查看 /home路径,发现家目录中并没有xiaoming用户:
【dev on wsl2】wsl2 with vscode简单配置
于是使用man手册查看了一下useradd的选项,发现需要加上-m选项才能创建家目录,有点离谱:
【dev on wsl2】wsl2 with vscode简单配置
彻底删除之前创建的xiaoming用户:

root@KevinGeorge:~# userdel -r xiaoming

【dev on wsl2】wsl2 with vscode简单配置
带上-m选项创建xiaoming用户:
【dev on wsl2】wsl2 with vscode简单配置
切换到xiaoming用户后发现没有用户的彩色控制台提示符(Color Prompt),原因应该是使用的shell是/bin/sh,而我们一般使用的shell是/bin/bash
【dev on wsl2】wsl2 with vscode简单配置
还是得推倒重来,彻底删除xiaoming用户,重新带上-s /bin/bash指定一下bash:

root@KevinGeorge:~# useradd -m xiaoming -s /bin/bash
root@KevinGeorge:~# passwd xiaoming

再次切换就有了彩色提示符:
【dev on wsl2】wsl2 with vscode简单配置
自此,可以使用vscode远程连接wsl2的普通用户了。
打开vscode,安装对应的remote远程连接插件:
【dev on wsl2】wsl2 with vscode简单配置
在terminal中输入code .打开vscode:
【dev on wsl2】wsl2 with vscode简单配置
远程连接到我的ubuntu20-04:
【dev on wsl2】wsl2 with vscode简单配置
如果输入code .出现如下报错:原因是曾经用root用户使用过 code .命令,所以普通用户再次使用就会报 Permission denied
参考自xx大佬
【dev on wsl2】wsl2 with vscode简单配置
可以执行命令删除该文件:

xiaoming@KevinGeorge:~$ sudo rm -f /tmp/remote-wsl-loc.txt

使用多用户进行操作时,还可能出现如下错误:提示 code not found
【dev on wsl2】wsl2 with vscode简单配置
测试了一下,code应该只能由wsl的默认登录用户使用,现在的默认登录用户是xiaoming,所以NingHai用户无法正常使用,使用如下指令可以修改wsl的默认登录用户:

ubuntu2004 config --default-user NingHai

默认登录用户切换到NingHai,启动ubuntu自动登录NingHai用户,此时可以正常使用code .
【dev on wsl2】wsl2 with vscode简单配置


2.2 配置C++开发环境:

在ubuntu上安装C/C++开发环境包:

下载安装包含大部分开发所需组件的 build-essential 组件包:

首先更新一下软件库:

xiaoming@KevinGeorge:~/cpp_code$ sudo apt update

【dev on wsl2】wsl2 with vscode简单配置
安装C/C++编译调试工具集合:

sudo apt install build-essential

【dev on wsl2】wsl2 with vscode简单配置
验证gcc/g++/gdb/make是否安装成功:
【dev on wsl2】wsl2 with vscode简单配置
一些便于C++开发的插件也可以自行下载一下,基本上到这里就能够有一个很好的linux c++编辑+编译环境了:
【dev on wsl2】wsl2 with vscode简单配置
至于vscode中使用ctrl+f5进行的编译和调试之类的操作,个人觉得没有必要去配置(.vscode文件夹中的tasks.json,launch.json,settings.json,c_cpp_properties.json),直接熟练使用linux中的命令行编译就很ok了,也比较贴合实际的linux开发环境。实在想有一个很好的调试环境建议visual studio,gdb也是很好的(如果会用的话)。

over~文章来源地址https://www.toymoban.com/news/detail-448408.html

到了这里,关于【dev on wsl2】wsl2 with vscode简单配置的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • wsl2 ubuntu ip 自动同步到windows端的vscode remote ssh(wsl2 ubuntu 静态ip 固定ip)

    ​ wsl2 中linux版本:ubuntu ​ windows版本: win10/win11 最近装了wsl2,使用vscode远程连接wsl2时遇到了如下问题: 1、wsl2的ip无法固定 2、wsl2的ssh服务不能自动开启。 尝试了网上许多方法,都不能解决,于是决定自己写python脚本解决。 如下方案可以自动将wsl2的ip同步到vscode remote s

    2024年02月03日
    浏览(59)
  • 基于WSL2+Docker+VScode搭建机器学习(深度学习)开发环境

    内容概述 :由于最近配发了新的工作电脑但不想装双系统,因此通过本博文来记录基于Windows子系统WSL+Docker搭建机器学习与深度学习开发环境的流程步骤,同时记录该过程中所遇到的相关问题及解决方案。期待为同行学习者提供参考; 最终效果 :在Windows电脑上,无需安装

    2024年02月04日
    浏览(44)
  • windows wsl2 vscode golang debug不生效问题排查

    golang vscode点击Run- Start Debugging后,看到正常的debug 调用dlv-dap,但是没有命中断点。 原因是我用的wsl2 remote, 默认代码保存在windows上,在wsl里看到的是/mnt/c/xxx的目录,为了在linux中方便使用建立了软连接。最后导致打断点时日志报找不到go文件。 排查思路: 1、在.vscode/launch.

    2024年02月03日
    浏览(66)
  • 史上最全从0开始教你玩转wsl2+docker,构建自己的开发环境

    1、安装wsl 需要windows版本大于 搜索启用或关闭windows功能 把图片中红点标注的功能勾选,注意勾选hyper-v就不能使用虚拟机类软件,如vm,安卓模拟器一类,点击确定,重启电脑。 打开任务管理器 确保虚拟化已经启用,部分设备可能需要去bios设置,自行查阅下相关资料 下载

    2024年02月08日
    浏览(45)
  • windows10在WSL2中安装Centos发行版+git+miniconda+vscode

      安装的操作系统最低要求为Windows10版本2004或者window11,Windows操作系统及具体版本查看办法为:点击键盘上的Windows徽标键,键入winver,如下图:   点击打开,即可查看Windows系统对应的版本。   启用Windows功能中的虚拟平台、适用于Linux的Windows子系统和Windows虚拟机监控

    2024年02月10日
    浏览(57)
  • 解决新手在安装WSL2的Ubuntu时报错:【WslRegisterDistribution failed with error: 0x800701bc】

    WSL2在安装Ubuntu时出现了这个警告: WslRegisterDistribution failed with error: 0x800701bc Error: 0x800701bc WSL 2 ??? aka.ms/wsl2kernel 然后任意键这个界面就消失了。 大概率原因是没安装Windows Subsystem for Linux 和 适用于 Linux的Windows 子系统。 在window设置应用里可检查是否有这两个。 请以PowerShell(

    2024年04月17日
    浏览(39)
  • WSL2配置网络代理

    注意 :本文参考自文章:WSL2配置代理,是对原文的补充,使其适用于河对岸云服务代理。 请注意:本文的WSL2代理配置, 需要Windows的代理软件已经能够正常工作 。 以河对岸云服务为例,购买相关服务。开启软件之后,右键 高级设置 ,在 Core: basic settings 页面中,可以查看

    2024年02月02日
    浏览(41)
  • window11系统基于 wsl2 安装Linux发行版ubuntu,并安装docker及vscode

    WSL是“Windows Subsystem for Linux”的缩写,顾名思义,WSL就是Windows系统的Linux子系统,其作为Windows组件搭载在Windows10周年更新(1607)后的Windows系统中。 既然WSL是“子系统”,那么WSL的地位我们能大概推测出—— “子系统”作为系统层的一部分,相较于应用层(虚拟机)会消耗

    2024年02月13日
    浏览(62)
  • WSL2下的Docker配置和使用

    在Windows的Linux子系统(Windows Subsystem for Linux)WSL2中安装、配置和使用 Docker,可以参考官方教程:WSL上的Docker远程容器入门. 重要步骤总结如下: 确保你的计算机运行的是 Windows 10(更新到版本 2004,内部版本 18362 或更高版本)。 安装 WSL,并为在 WSL 2 中运行的 Linux 发行版设

    2024年02月07日
    浏览(45)
  • WSL2中配置docker运行环境

    不在windows中直接安装docker的原因是,windows中安装的docker,在创建linux容器以后,带宽会急剧下降,只能达到 7M/s(局域网,非外网),而在wsl中安装的docker,创建容器后,带宽性能丝毫不受影响。 网上有很多大神,关于安装wsl2的文章,这里就不详述。贴一个链接 Winux之路-

    2024年02月15日
    浏览(45)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包