在Windows下使用WSL和VSCode使用Games101环境
视频在【配置环境】使用WSL2并在VSCode下使用Games101环境 - Bilibili
但是这个视频是我踩了一些不必要的坑,我认为首先还是看本文吧,已经足够详细了
一、WSL和Ubuntu的安装
-
在Windows功能中确保启用适用于Linux的Windows子系统(WSL)、虚拟机平台(Ubuntu)这两个功能,然后根据弹窗选择立即重新启动(可以在菜单里搜索“启用或关闭Windows功能)
-
管理员权限打开PowerShell或命令提示符(CMD),输入命令
wsl --update --web-download
-
菜单中搜索
Microsoft Store
,在商店中搜索Ubuntu
,点击下载 -
下载好之后打开Ubuntu设置User,设置账号密码,密码不会显示出来
到这里已经拥有了WSL和Ubuntu了,我们可以点击WSL进入,接下来会设置一些其他的
二、配置终端(包括默认终端、ZSH的安装、代理的更改、清华源的修改)
-
让终端默认打开Ubuntu:打开PowerShell的设置,用记事本打开Json文件
搜索“Ubuntu”找到guid并复制到defaultProfile,重启PowerShell(不是那么必要)现在打开PowerShell就是默认为Ubuntu了
-
配置Ubuntu终端的ZSH(可选,只为了好看一些,这里有许多主题、字体、颜色、背景等设置)
- 输入如下指令:
git clone https://github.com/powerline/fonts.git cd fonts bash ./install.sh
这里就是在GitHub上下载fonts字体,然后进行安装,安装文件一共有
install.sh
和install.ps1
。- 然后安装ZSH:
sudo apt update sudo apt install git zsh -y
一般没有什么问题,输入对指令即可。
- 然后安装oh-my-zsh
输入指令
sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
一般会出现如下错误:
curl: (7) Failed to connect to raw.githubusercontent.com port 443: Connection refused
这是因为网络的原因,可以自行解决,不过我认为应该最好换代理,这样WSL的代理和Windows一样了。(会在下一步写出)
安装成功应该是如下界面
-
更改代理
在官方文档中使用 WSL 访问网络应用程序 - 镜像模式网络 可以找到“镜像模式网络”
用管理员权限打开PowerShell(不是WSL),输入对应指令
Set-NetFirewallHyperVVMSetting -Name '{40E0AC32-46A5-438A-A0B2-2B479E8F2E90}' -DefaultInboundAction Allow
这样就可以让WSL也能挂🪜
-
更改清华源:更快
- 首先查看Ubuntu版本(一般都是Ubuntu 24.04.1 LTS),在WSL中输入
hostnamectl
指令
- 在清华镜像网站清华开源软件镜像站-Ubuntu 软件仓库-传统格式上找到对应指令
复制下来
- 输入指令
sudo nano /etc/apt/sources.list
对这个文件进行修改,用vim
也可以
粘贴进去保存并退出,这样以后的都是在清华镜像上进行下载安装等操作了
- 首先查看Ubuntu版本(一般都是Ubuntu 24.04.1 LTS),在WSL中输入
三、VSCode上使用WSL以及环境配置
-
当然是下载VSCode,这里在官网上下载就行,然后在左边安装中文插件,这样VSCode就是中文版的了
-
安装
WSL
插件和Remote - SSH
插件 -
点击左下角蓝色按钮进行链接WSL
在上面点击
Connect to WSL
-
这样就可以在VSCode上使用WSL了
四、Games101的设置
现在已经有Python的环境了,如果需要对test.py
进行编译运行,则需要使用python3 test.py
,在后面会讲到如何使用python
也可以代替python3
-
安装gcc和g++
现在可以看到并没有找到gcc和g++
我们输入指令进行安装
sudo apt install build-essential
现在输入
gcc --version
和g++ --version
可以看已经有了环境了我们可以写一个C++的helloworld进行测试
参考https://code.visualstudio.com/docs/cpp/config-linux
-
安装opencv
sudo apt install libopencv-dev
在这里之前更新一下源
sudo apt update
-
安装eigen3
sudo apt-get install libeigen3-dev
-
安装VcXsrv
https://nchc.dl.sourceforge.net/project/vcxsrv/vcxsrv/1.20.9.0/vcxsrv-64.1.20.9.0.installer.exe
一直next即可
打开WSL需要修改
.bashrc
文件(我同样对.zshrc
也修改了)cd sudo vim .bashrc
进入桌面目录,然后编辑
.bashrc
,输入i
进行编辑,到最下方添加:export DISPLAY=localhost:0
然后按
esc
退出编辑,然后输入:wq
和回车进行保存并退出 -
使用
python
代替python3
输入
vi ~/.zshrc
指令对~/.zshrc
文件进行修改在最下方加入
alias python=python3
保存并退出,然后输入如下指令进行更新
source ~/.zshrc
最后可以看出可以使用
python
指令了
至此所有步骤都已经结束了
五、常见错误(持续更新)
1.运行时如果遇到了
则需要以下三个步骤:
步骤一:添加Oibaf的PPA
首先,您需要添加Oibaf的PPA(Personal Package Archive),这个PPA提供了最新的开源图形驱动程序包,包括Mesa,为Radeon、Intel和Nvidia硬件提供支持。
打开终端,并输入以下命令来添加PPA:
sudo add-apt-repository ppa:oibaf/graphics-drivers
这条命令会告诉Ubuntu的系统包管理器APT,您想从Oibaf的PPA中安装软件包。
步骤二:更新软件包列表
添加PPA后,您需要更新APT的软件包列表,以便它知道新的软件源中有哪些可用的软件包。在终端中输入:
sudo apt update
步骤三:升级系统
现在,APT已经知道Oibaf的PPA中的软件包了,您可以开始升级您的系统了。不过,请注意,直接使用sudo apt upgrade可能会升级系统中的许多软件包,而不仅仅是Mesa。如果您只想升级与图形相关的软件包,可以使用更具体的命令,但通常对于大多数用户来说,升级整个系统也是可接受的。
sudo apt upgrade
这条命令会升级所有可升级的软件包,包括从Oibaf PPA中获取的Mesa图形驱动程序。
(参考博客:MESA 和 glx 错误 MESA: error: ZINK: failed to choose pdevglx: failed to create drisw screen - CSDN博客
文章评论