win11下WSL环境安装

news2024/9/28 15:27:33

微软官方wsl手册
微软官方wsl手册pdf

一、wsl中镜像安装

启用或关闭Windows功能勾选一下两个选项
在这里插入图片描述
打开powershell,输入wsl, 可以根据wsl的命令来安装镜像。也可以在软件商店中进行安装ubuntu
在这里插入图片描述
安装完成后,打开ubuntu,会自动完成初始化。提示安装成功,自动登入账户,登入为root账户。
在这里插入图片描述
这样设置完成后,登入的都是root用户。可以通过下面的方式来修改:
只需要在C:\Users\用户名\AppData\Local\Microsoft\WindowsApps路径下确认所安装的Linux子系统具体的版本号
在这里插入图片描述
然后打开CMD,输入XXXXXX版本号.exe config --default-user root运行
在这里插入图片描述
再重新登入即可。

出现错误:
如果出现系统找不到指定的文件,是因为之前安装的没有卸载的原因

wsl --list --all
wsl --unregister 名字

重新安装就行了

二、将安装的镜像移出C盘

在这里插入图片描述

三、配置cuda环境

cuda下载页

在这里插入图片描述

值得注意的是WSL版本要求是WSL2.0,可以选择本地安装也可以选择网络安装,我选择的是本地运行文件(因为前两种试了都不行),官网的安装源码如下,安装的时候需要注意一下安装的cuda版本,默认为最新版本,但目前pytorch官网上支持的最新cuda版本为11.3所以需要选择安装:

wget https://developer.download.nvidia.com/compute/cuda/11.3.0/local_installers/cuda_11.3.0_465.19.01_linux.run

sudo sh cuda_11.3.0_465.19.01_linux.run

在这里插入图片描述
安装的过程中可以看到驱动检测不到,属于正常情况。

可能会出现gcc版本不对的问题
这样可以跳过错误

sudo sh cuda_11.3.0_465.19.01_linux.run --override

安装完成以后

sudo vim ~/.bashrc
在上面的文档中添加下面两句
export LD_LIBRARY_PATH=/usr/local/cuda/lib64
export PATH=$PATH:/usr/local/cuda/bin

source ~/.bashrc
#查看cuda版本
nvcc -V
#查看nvidia界面,这个需要在原本的Windows系统上安装nvidia驱动的
nvidia-smi

在这里插入图片描述
至此,cuda安装完毕,但是gcc版本不匹配的问题还没有解决。
在使用nvcc编译的时候会出现错误。
unsupported GNU version! gcc versions later than 10 are not supported! The nvcc flag '-allow-unsupported-compiler' can be used to override this version check; however, using an unsupported host compiler may cause compilation failure or incorrect run time execution. Use at your own risk.

由于linux中可以有多个版本的gcc和g++,我们可以为系统默认的gcc和g++指定特定的默认版本,但是对于cuda的nvcc来说有更方便的方法,那就是nvcc会优先读取自身路径下的gcc然后如果没有再读取系统默认路径下的gcc,因此我们只需要为nvcc设置特定版本gcc的软连接即可:
可以支持多个版本的gcc和g++安装

gcc -v
sudo apt-get install gcc-10
sudo apt-get install g++-10

安装的时候可能出现找不到包的问题
以下解决

sudo apt-get update

为cuda设置软链接:

sudo ln -s /usr/bin/gcc-10 /usr/local/cuda/bin/gcc

接下来就可以编译了

nvcc t.cu -o t
./t

四、docker安装

微软官方使用手册

在这里插入图片描述
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/353953.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【RabbitMQ六】——RabbitMQ主题模式(Topic)

RabbitMQ主题模式(通配符模式)前言什么是Topic模式使用Topic模式的要点通配符规则示例代码示例Pom文件引入RabbtiMQ依赖RabbitMQ工具类生产者消费者1消费者2效果总结前言 通过本篇博客能够简单使用RabbitMQ的主题模式。 本篇博客主要是博主通过官网总结…

K8s集群部署(kubeadm安装部署详细手册)

1、简介 K8s部署主要有两种方式:1、Kubeadm Kubeadm是一个K8s部署工具,提供kubeadm init和kubeadm join,用于快速部署Kubernetes集群。 2、二进制 从github下载发行版的二进制包,手动部署每个组件,组成Kubernetes集群。…

【C++进阶】二、多态详解(总)

目录 一、多态的概念 二、多态的定义及实现 2.1 多态的构成条件 2.2 虚函数 2.3 虚函数的重写 2.4 虚函数重写的两个例外 2.4.1 协变 2.4.2 析构函数的重写 2.5 C11 override 和 final 2.5.1 final 2.5.2 override 2.6 重载、覆盖(重写)、隐藏(重定义)的对比 三、…

【C++】类与对象 (四)初始化列表 static成员 友元 内部类 匿名对象 拷贝对象时的一些编译器优化

前言 本章就是我们C中类与对象的终章了,不过本章的难度不大,都是类中一些边边角角的知识,记忆理解就行了,相信经过这么长时间的学习类与对象,你对面向对象也有了更加深的理解,最后我们学习完边边角角的一些…

2022黑马Redis跟学笔记.实战篇(五)

2022黑马Redis跟学笔记.实战篇 五4.5 Redis实现秒杀优化4.5.1 基于Redis实现秒杀减库存6.1 秒杀优化-异步秒杀思路4.5.2 基于Redis的一人一单限制4.5.3 基于阻塞队列的异步下单4.6 秒杀的异步优化4.6.1.基于消息队列的异步下单思路4.6.2.基于List结构的消息队列4.6.3.基于PubSu…

[答疑]经营困难时期谈建模和伪创新-长点心和长点良心

leonll 2022-11-26 9:53 我们今年真是太难了……(此处删除若干字)……去年底就想着邀请您来给我们讲课,现在也没有实行。我想再和我们老大提,您觉得怎么说个关键理由,这样的形势合适引进UML开发流程? UML…

ESXi Args勒索病毒来袭,VMware ESXi用户需提高警惕

近日,多国通报了一项名为“ESXi Args”的勒索软件活动。ESXi Args主要针对VMware ESXi服务器进行攻击,利用ESXi 服务器中的已知漏洞,获取访问权限并部署勒索软件,对ESXi服务器内配置文件进行加密并发送赎金票据。 当前&#xff0…

从零到1构建可发布的npm包

本文将介绍通过 rollup, 从零开始构建一个简易的可发布的npm包。本文可实现的目标如下: 通过 rollup进行构建支持 Typescript支持 npm 方式安装支持 cdn 方式,在页面中引入支持本地调试可发布到npm 一、从 package 开始项目分析 首先,在终…

港科夜闻|香港科大与香港科大(广州)两校交流开启新篇章

关注并星标每周阅读港科夜闻建立新视野 开启新思维1、香港科大与香港科大(广州)两校交流开启新篇章。2月10日,香港科技大学校董会主席廖长城先生、校董会副主席杨佳锠先生、校长叶玉如院士一行到访香港科大(广州),共商“香港科大一体、双校互补”框架下的…

go gin学习记录3

环境 环境:mac m1,go version 1.17.2, goland, mysql 安装gorm 第二节学习了在gin中使用go的原生SQL进行操作,这节学习一下使用orm。 go的orm包有很多,gorm是使用较多较广的,所以我们就用gor…

车辆逆行识别检测预警算法 yolov5

车辆逆行识别检测预警算法通过Pythonyolov5网络模型计算机算法技术,车辆逆行识别检测预警算法对道路来往行驶车辆出现逆行行为及时预警存档。Python是一种由Guido van Rossum开发的通用编程语言,它很快就变得非常流行,主要是因为它的简单性和…

大数据之-Nifi-监控nifi数据流信息_监控数据来源_bub轻松复现---大数据之Nifi工作笔记0011

通过数据流功能可以轻松复现,数据的流向在某个时间点数据是怎么流动的,出现了什么问题,太强大了.. 真的是,可以看到通过右键,处理器,打开view data province就可以看到, 上面是处理器处理数据的详细信息 点击左侧的详情图标可以查看详情信息,details是这个事件处理的内容详情,…

【计算机网络】运输层

文章目录运输层概述运输层端口号、复用与分用的概念UDP和TCP的对比TCP的流量控制TCP的拥塞控制TCP超时重传时间的选择TCP可靠传输的实现TCP的运输连接管理TCP的连接建立(3次握手)TCP的连接释放(4次挥手)TCP报文段的首部格式运输层概述 这里我们对运输层进行概述,之…

【双指针问题】LeetCode 925. 长按键入

Halo,这里是Ppeua。平时主要更新C语言,C,数据结构算法......感兴趣就关注我吧!你定不会失望。 🌈个人主页:主页链接 🌈算法专栏:专栏链接 我会一直往里填充内容哒! &…

【C++】类型转化

🌈欢迎来到C专栏~~类型转化 (꒪ꇴ꒪(꒪ꇴ꒪ )🐣,我是Scort目前状态:大三非科班啃C中🌍博客主页:张小姐的猫~江湖背景快上车🚘,握好方向盘跟我有一起打天下嘞!送给自己的一句鸡汤&…

Python-第九天 Python异常、模块与包

Python-第九天 Python异常、模块与包一、了解异常1. 什么是异常:2. bug是什么意思:二、异常的捕获方法1. 为什么要捕获异常?2. 捕获异常的语法3. 如何捕获所有异常?三、异常的传递性1.异常是具有传递性的四、Python模块1. 什么是模…

21. 合并两个有序链表

题目链接:解题思路:遍历,双指针:因为两个链表有序,所以只需要依次比较两个元素的大小,然后添加到新的链表中即可first指针指向第一个链表l1,second指针指向第二个链表l2,answer保存合…

Python3 JSON 数据解析

Python3 JSON 数据解析 JSON (JavaScript Object Notation) 是一种轻量级的数据交换格式。 Python3 中可以使用 json 模块来对 JSON 数据进行编解码,它包含了两个函数: json.dumps(): 对数据进行编码。json.loads(): 对数据进行解码。 在 json 的编解码…

CleanMyMac4.12.5最新版安装下载教程

告别硬盘空间不足,让您的Mac极速如新CleanMyMac是一款强大的 Mac 清理、加速工具和健康卫士,让您的 Mac 加快启动速度。CleanMyMac是一款专业的Mac清理软件,可智能清理mac磁盘垃圾和多余语言安装包,快速释放电脑内存,轻…

01:入门篇 - 初识 CTK

作者: 一去、二三里 个人微信号: iwaleon 微信公众号: 高效程序员 CTK 是什么 CTK:支持生物医学图像计算的公共开发包 CTK 全称:Common ToolkitCTK 主页:http://www.commontk.org/Github 地址:https://github.com/commontkCTK 标志 Logo 是一个品牌的形象,对外它传递的…