WSL 配置 Linux

WSL 配置 Linux

Windows 启动 Linux 子系统

控制面板 -> 程序和功能, 将 适用于 Linux 的 Windows 子系统 勾选。

62626

安装 Terminal

在 Microsoft Store 市场上搜索 Terminal 安装 Windows Terminal

在这里插入图片描述


安装 编译工具链

sudo apt update # 更新软件包
sudo apt install build-essential
sudo apt install gdb # GDB 调试器
sudo apt install cmake
sudo apt install ninja-build    # 构建加速、自动化构建

等待安装完成,之后查看安装结果

cmake --version
gcc -v
g++ -v
ninja --version

Ubuntu 20.04 安装 vcpkg

安装 vcpkg

从 GitHub 存储库下载 vcpkg:

# wget: 一个用于从网络上下载文件的命令行工具
# -O vcpkg.tar.gz: 表示将下载的文件保存为 vcpkg.tar.gz,其中 -O 参数指定保存的文件名
wget -O vcpkg.tar.gz https://github.com/microsoft/vcpkg/archive/master.tar.gz

创建一个新目录来存储 vcpkg 并将 tar.gz 文件解压缩到其中:

sudo mkdir /opt/vcpkg
sudo tar xf vcpkg.tar.gz --strip-components=1 -C /opt/vcpkg
# --strip-components=1:该选项指定解压缩时去除文件路径中的第一个组件,如去除"vcpkg-master"

运行以下命令来构建 vcpkg 本身:

sudo apt-get install curl zip unzip tar
sudo /opt/vcpkg/bootstrap-vcpkg.sh

在 /usr/local/bin 目录中,可创建一个指向 vcpkg 命令的符号链接:

sudo ln -s /opt/vcpkg/vcpkg /usr/local/bin/vcpkg

现在 vcpkg 可以用作所有用户的系统范围命令。可使用以下命令检查 vcpkg 版本:

vcpkg version

tar.gz 不再需要该文件,将其删除:

rm -rf vcpkg.tar.gz

测试 vcpkg

可使用 vcpkg install 命令来构建和安装库。例如,以下命令安装 zlib / tbb 库。但可能还需要安装其他的包,可以从错误信息中找到。

sudo apt-get install pkg-config

sudo vcpkg install tbb:x64-linux

运行以下命令以获取已安装库的列表:

sudo vcpkg list

卸载 vcpkg

如果想彻底删除 vcpkg,删除安装目录:

sudo rm -rf /opt/vcpkg

删除符号链接:

sudo rm -rf /usr/local/bin/vcpkg

删除 vcpkg 缓存和相关目录:

sudo rm -rf /root/.cache/vcpkg
sudo rm -rf /root/.vcpkg
rm -rf ~/.vcpkg

测试 TBB

在项目根目录下新建.vscode 文件夹,在其下新建 setting.json 文件,将如下内容拷贝进去:

"C_Cpp.default.configurationProvider": "ms-vscode.cmake-tools",
"cmake.configureSettings": {
    "CMAKE_TOOLCHAIN_FILE": "/opt/vcpkg/scripts/buildsystems/vcpkg.cmake"
},
"cmake.buildDirectory": "${workspaceFolder}/build",
"C_Cpp.errorSquiggles": "enabled",

项目根目录下新建 CMakeLists.txt 文件:

cmake_minimum_required(VERSION 3.11)

project(BlinkHash)

set(CMAKE_CXX_STANDARD 17)

# 寻找TBB库
find_package(TBB CONFIG REQUIRED)

# include_directories(${PROJECT_SOURCE_DIR}/lib)

# 添加可执行文件
file(GLOB SRC_LIST "${CMAKE_CURRENT_SOURCE_DIR}/test/*.cpp")
add_executable(app ${SRC_LIST})

target_link_libraries(app PRIVATE TBB::tbb TBB::tbbmalloc)

迁移 WSL

查看系统版本

wsl -l -v

关闭系统

wsl --shutdown

迁移系统

wsl --export Ubuntu E:\EnvironmentSetting\CPP\UbuntuWSL\Ubuntu.tar

迁移后注销原系统

wsl --unregister Ubuntu

# 查看是否真的注销成功
wsl -l -v

导入系统

wsl --import <导入的Linux名称> <导入盘的路径> <ubuntu.tar的路径> --version 2 (代表wsl2)

wsl --import Ubuntu E:\EnvironmentSetting\CPP\UbuntuWSL\ E:\EnvironmentSetting\CPP\UbuntuWSL\Ubuntu.tar --version 2

修改默认用户:打开 wsl ubuntu 之后,默认以 root 身份登录

ubuntu.exe config --default-user flyboy

压缩系统镜像文件

先使用命令行来检查 wsl 状态,若为 running 需关闭它。

wsl --list --verbose

wsl --shutdown

使用 diskpart 压缩 wsl 虚拟磁盘

在命令行启动 diskpart 工具:

diskpart

确定虚拟磁盘文件的位置,用 diskpart 选择这个文件:

select vdisk file="{vhdx文件名}"

select vdisk file="E:\EnvironmentSetting\CPP\UbuntuWSL\ext4.vhdx"

# DiskPart 已成功选择虚拟磁盘文件。

再执行压缩命令:

detach vdisk

attach vdisk readonly    // "所请求的操作需要以只读方式"  请执行这一步

compact vdisk

exit

注意:在执行任何磁盘操作之前,最好备份重要数据并谨慎操作,以免造成数据丢失或其他意外情况。


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

星航夜空的帆舟

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值