哎,配环境真麻烦。特别是使用windows。
MSYS2
msys2 有包管理器 pacman,而且文件 IO 速度比 wsl 要快。
1 2 3 4 5 6 7 8 |
pacman -Syu --disable-download-timeout # 操作之后重启一下 msys2 pacman -Syu --disable-download-timeout pacman -S mingw-w64-x86_64-gcc --disable-download-timeout pacman -S mingw-w64-x86_64-make --disable-download-timeout pacman -S mingw-w64-x86_64-gdb --disable-download-timeout |
这样就可以直接安装 mingw-w64 使用 latest 的 g++ 编译器(记得加到系统路径)。
同样的,可以安装 clang++。
WSL2
我死了2😟😟😟。
打开我们的 powershell 输入:
1 |
wsl --install |
如果出现 Error 0x80370114
需要打开控制面板,选择 程序 -> 程序与功能 -> 启用或关闭 Windows 功能
,勾选 虚拟机平台
和 适用于 Linux 的 Windows 子系统
。
然后配置代理。在 C:\user\<your name>
下创建 .wslconfig
并写入:
1 2 3 4 5 6 |
[experimental] autoMemoryReclaim=gradual # gradual | dropcache | disabled networkingMode=mirrored dnsTunneling=true firewall=true autoProxy=true |
然后重启一下 wsl,修改 .bashrc
在文件末尾加上:
1 2 |
host_ip=$(cat /etc/resolv.conf |grep "nameserver" |cut -f 2 -d " ") export ALL_PROXY="http://$host_ip:7890" |
然后 source .bashrc
。
同时我们需要打开代理软件(以 clash 为例)的 Allow LAN
,同时需要安装 server 并打开。重启之后 ping 一下试试😊。
当然我们可能不希望放在 C 盘。
我们先来看一看我们的 Linux 发行版:
1 |
wsl -l --all -v |
然后导出为 tar 文件(以导入到 D 盘为例):
1 |
wsl --export {你的 Linux 发行版} d:\{文件名}.tar |
再注销当前分发版:
1 |
wsl --unregister {你的 Linux 发行版} |
重新导入并安装 WSL(可以修改为其他目录):
1 |
wsl --import {你的 Linux 发行版} {目标路径} {.tar 文件路径} --version 2 |
设置默认登录用户为安装时用户名:
1 |
{你的 Linux 发行版} config --default-user Username |
大功告成,重新启动 wsl 即可。
发表回复