首页 > 其他分享 >VS2019+wsl2开发环境部署

VS2019+wsl2开发环境部署

时间:2023-02-19 21:35:08浏览次数:49  
标签:cn VS2019 部署 sudo wsl https edu wsl2 ubuntu

一、下载安装VS 2019

进入官网,选择community版本下载

打开安装器,勾选使用 C++ 的桌面开发使用 C++ 的 Linux 开发,安装目录可以更改

二、安装wsl2

先决条件

必须运行 Windows 10 版本 2004 及更高版本(内部版本 19041 及更高版本)或 Windows 11 才能使用以下命令。 如果使用的是更早的版本,请参阅手动安装页
BIOS开启CPU虚拟化。

2.1 安装 WSL(新方法)

在管理员模式下打开 PowerShell,输入 wsl --install 命令,然后重启计算机。

wsl --install

此命令将启用运行 WSL 并将Ubuntu安装为默认发行版。 (可以更改此默认发行版)。
重新启动计算机,打开默认安装的Ubuntu-22.04,根据提示逐步设置用户名和密码。

2.2 安装 Windows 终端(推荐)

参考搭建优雅的Windows终端,只需要执行其中的一、二、4.2

配置完成后,在管理员模式下打开 Windows terminal 或者 PowerShell,执行以下命令,升级WSL。

wsl --update  
wsl --shutdown

2.3 更换清华大学源

打开Windows终端,下拉选择Ubuntu-22.04进入wsl

手动替换

sudo nano /etc/apt/sources.list

打开Ubuntu 的软件源配置文件,将里面的内容全部删除,替换为以下内容:

# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-updates main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-backports main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-security main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-security main restricted universe multiverse

# 预发布软件源,不建议启用
# deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-proposed main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-proposed main restricted universe multiverse

命令替换

执行如下命令自动替换

sudo sed -i "s@http://.*archive.ubuntu.com@https://mirrors.tuna.tsinghua.edu.cn@g" /etc/apt/sources.list
sudo sed -i "s@http://.*security.ubuntu.com@https://mirrors.tuna.tsinghua.edu.cn@g" /etc/apt/sources.list

更新软件源,安装必要工具

sudo apt update && sudo apt upgrade -y
sudo apt install curl wget git ca-certificates build-essential net-tools -y
sudo apt install g++ gdb make ninja-build rsync zip -y
sudo apt install openssh-server -y

2.4 WSL ssh 配置

老样子,打开Windows终端,下拉选择Ubuntu-22.04进入wsl

  • 重新安装openssh-server
sudo apt purge openssh-server
sudo apt install openssh-server
  • 关闭终端。在管理员模式下重新打开一个 Windows terminal
wsl --shutdown
  • 重新进入wsl,重启SSH服务
sudo service ssh restart
sudo service ssh status
sudo systemctl enable ssh
  • 在Ubuntu中查看WSL2的ip(默认为浮动IP,每次重启Ubuntu后改变)
ifconfig

然后可以在Windows terminal中SSH该IP进行登陆。

ssh [用户名]@[ip]

固定WSL IP

每次重新启动WSL时,Ubuntu子系统会变化,为了能使用固定IP进行ssh连接,可以配置以下脚本,保存为bat格式:

@echo off
setlocal enabledelayedexpansion

wsl --shutdown
wsl -u root service ssh start | findstr "sshd" > nul
if !errorlevel! equ 0 (
    echo ssh start success
    wsl -u root ip addr | findstr "172.27.159.210" > nul
    if !errorlevel! equ 0 (
        echo wsl ip has set
    ) else (        
        wsl -u root ip addr add 172.27.159.210/20 broadcast 172.27.159.255 dev eth0 label eth0:1
        echo set wsl ip success: 172.27.159.210
    )


    ipconfig | findstr "172.27.159.1" > nul
    if !errorlevel! equ 0 (
        echo windows ip has set
    ) else (
        netsh interface ip add address "vEthernet (WSL)" 172.27.159.1 255.255.240.0
        echo set windows ip success: 172.27.159.1
    )
)
pause

为该脚本创建快捷方式,右键该快捷方式的属性>快捷方式>高级,勾选用管理员身份运行

下次需要启动Ubuntu WSL2时,先启动该脚本即可。

三、基于 WSL 2 和 MSBuild 的 Linux 项目

3.1 创建项目

打开Visual Studio 2019,创建新项目—选择 C++ Linux 控制台应用程序—填写项目和解决方案名称、选择项目保存目录,完成创建

3.2 配置跨平台

VS2019——工具——选项

跨平台——连接管理器——添加,填写WSL IP、用户名、密码。点击连接,接受保存指纹。
如果无法连接,就关闭wsl,再启动固定WSL IP的脚本

可以看到Debug已经出现了WSL 的IP

3.3 生成项目

按 F7 或者 生成——生成解决方案,可以看到已经成功生成了解决方案

标签:cn,VS2019,部署,sudo,wsl,https,edu,wsl2,ubuntu
From: https://www.cnblogs.com/leebri/p/17135644.html

相关文章