当前位置:   article > 正文

windows11安装wsl2(linux)+VScode+ miniconda+TVM+python环境部署_wsl miniconda

wsl miniconda

第一次安装,失败

1. Windows11 D盘安装wls(linux)

参考链接:windows11安装wsl 跳过C盘安装

  1. 开启Windows的wsl与虚拟平台
    在这里插入图片描述

  2. 以管理员身份打开powershell下载ubuntu20.04
    在D盘创建一个文件夹,如Linux;
    Win+X 以管理员身份 打开powershell;
    输入命令行 D: ,直接跳转到D盘;
    再输入命令行 cd Linux,进入子目录;
    输入以下命令行 ,此命令行在cmd 无效,下载需10分钟左右;

Invoke-WebRequest -Uri https://wsldownload.azureedge.net/Ubuntu_2004.2020.424.0_x64.appx -OutFile Ubuntu20.04.appx -UseBasicParsing
  • 1

备注:
也可以直接从文件路径直接输入powershell打开
在这里插入图片描述
3. 解压并安装
逐行运行以下命令

Rename-Item .\Ubuntu20.04.appx Ubuntu.zip
Expand-Archive .\Ubuntu.zip -Verbose
cd .\Ubuntu\
.\ubuntu2004.exe
  • 1
  • 2
  • 3
  • 4

几分钟后,输想要的用户名和密码(用户名要小写)
4. 安装后测试
测试

wsl -l -v
  • 1

关闭

wsl --shutdown
  • 1

重新打开cmd,输入wsl,可直接跳转ubuntu系统

2. 安装vscode并连接到WSL2

参考链接:安装vscode并连接到WSL2

  1. 下载vscode
    我的vscode提前安装好了,所以此步跳过。
  2. 安装 wsl扩展插件
    在这里插入图片描述
  3. 远程链接
    点击左下角的绿色 ><,选择New WSL Windows,弹出新的vscode窗口
    在这里插入图片描述
  4. 修改权限
    提权,方便直接使用vscode编辑文件,777仅仅意味着将所有权利授予所有用户
sudo chmod 777 /etc/apt/sources.list	
  • 1
  1. 添加清华镜像
    网上教程很多

3. wsl 安装miniconda

miniconda 相比于anaconda更为精简。安装较为简单,直接参考别的blog。
参考链接:wsl中安装miniconda

4. wls安装TVM

接下来的安装就比较费事了,按照网上的blog,出现了一系列的问题。

参考blog

WSL环境安装TVM:主要流程和依赖库等参考此blog,但是具体实施细节有差异

4.1 安装依赖库

记得关闭全局weipin

注意,下面的依赖库中没有安装 cmake,因为直接安装版本比较低,后面的安装要求CMake > 3.18

sudo apt-get update
sudo apt-get install -y python3 python3-dev python3-setuptools gcc libtinfo-dev zlib1g-dev build-essential libedit-dev libxml2-dev
  • 1
  • 2

备注:以下命令安装后,版本过低

sudo apt install cmake
  • 1

4.2 从源码安装cmkae

备注: cmake版本过低,卸载

sudo apt autoremove cmake
  • 1

参考1,重点是流程 Linux 安装 CMake
参考2,重点可以学习cmake原理 ubuntu18.04下–CMake教程
预编译二进制下载过慢,所以采用源码安装,源码安装就是编译时太慢。

  1. 下载源码
    官网下载cmake-3.24.3.tar.gz ,如图红色方框,
    在这里插入图片描述
    备注:sh文件安装,没有尝试过

  2. 解压并配置
    cmd进入到下载的目录

tar -zxvf cmake-3.22.3.tar.gz -C <目标路径>
  • 1

切换到 CMake 源目录并执行 bootstrap 脚本

cd cmake-3.22.3.tar.gz
  • 1

配置

./bootstrap --parallel=32 #(可选)后续make时可以并行编译 
./bootstrap --prefix=/usr/local/cmake #添加安装位置
  • 1
  • 2
  1. 编译
make -j 6 #6核并行编译
  • 1
  1. 安装
make install 
  • 1

可以尝试 make install -j 6

ln -s /usr/local/bin/cmake /usr/bin/cmake 
#软连接 ln [original filename] [link name]
  • 1
  • 2
  1. 测试
    更改别名之类的,可以不需要
cmake -version
  • 1

4.3 从源码安装LLVM

按照此blog中,从pre-build版本安装,后面的cmake .. 报错

在这里插入图片描述
寻找原因:
(1) 失败1:修改(USE_LLVM OFF) 的位置应该是cmake/config.cmake,而不是build/config.cmake,不报错了,直接编译通过,但是在make -j4时出错。

(2) 成功:原因(1)是错误的,仔细查看红字上方的报错,发现是没有lib,动态链接库。因此倒退回上一步安装此链接步骤1,下载的pre-build可能缺少我所需要的lib库
在这里插入图片描述
因此,采用源码编译
参考1:Ubuntu 18.04 安装Clang/LLVM 11

  1. 下载源码
    到官网直接下载 LLVM各版本的源码、预编译二进制
    或者在wsl中输入
    wget https://github.com/llvm/llvm-project/releases/download/llvmorg-11.0.0/llvm-11.0.0.src.tar.xz.sig
  2. 解压并进入
tar xvf llvm-11.0.0.src.tar.xz -C <目标目录>
# 进入解压后的目录
cd llvm-11.0.0.src
  • 1
  • 2
  • 3

创建一个新的目录,用于存放 Clang/LLVM 编译的结果

mkdir build
cd build
  • 1
  • 2
  1. 编译并安装
    使用 cmake 编译 Clang/LLVM
cmake ..
  • 1
make -j 6
  • 1

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
swap空间不足
https://www.linuxidc.com/Linux/2010-09/28915.htm
https://blog.csdn.net/vincentuva/article/details/83111447

还是有问题
在这里插入图片描述

make install -j 6
  • 1

vim
在这里插入图片描述

在这里插入图片描述

4.4 安装TVM

  1. 获取源码
    加快git 下载速度技巧:
    打开weipin,选择常规,点击Port的那个端口号,点击"CMD",此时已复制代理地址,
    在这里插入图片描述
    打开cmd,输入
set http_proxy=http://我的IP:端口号 & set https_proxy=http://我的IP:端口号
  • 1

下载TVM

git clone --recursive https://github.com/apache/tvm tvm
  • 1
  1. 源码编译
    解压到某个特定位置,

切换目录

cd tvm
mkdir build
  • 1
  • 2

复制

cp cmake/config.cmake build
  • 1
  1. 修改 build/config.cmake
    参考 blog
    (1)修改 build/config.cmake 以添加 set(USE_LLVM /path/to/your/llvm/bin/llvm-config),该操作主要是绑定LLVM 后端 ,主要是将llvm-config 文件的绝对路径,添加至 USE_LLVM 属性。

(2)PyTorch 的用户建议设置 set(USE_LLVM “/path/to/llvm-config --link-static”) 和 set(HIDE_PRIVATE_SYMBOLS ON) 以避免 TVM 和 PyTorch 使用的不同版本的 LLVM 之间潜在的符号冲突。

cd build
cmake ..
make -j4
make install 
```## 5. 安装ffmpeg
主要流程参考 [ffmpeg安装 ](https://blog.csdn.net/lucky_mmg/article/details/123874216)
添加路径不可以有空格
```bash
export PATH=$PATH:/mnt/~/ffmpeg/bin     # (定位到FFmpeg文件夹即可,如果不知道FFmpeg文件夹所在位置,可以使用pwd命令查看)

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

第二次安装 失败

主要参考 服务器(CentOS7)上安装 TVM0.9 + python3.7

1. 查看环境依赖库、下载源码

打开wsl,创建 python=3.8.2

conda create -n tvmBuild python=3.8.2
  • 1

查看目前版本

cmake /3.24.3
gcc /9.4.0
Ubuntu/20.04
llvm 未安装

2,安装llvm

centos7编译安装llvm
wget 下载过慢,直接用链接在浏览器下载

mkdir llvm-8.0.0
cd llvm-8.0.0
wget http://releases.llvm.org/8.0.0/llvm-8.0.0.src.tar.xz
wget http://releases.llvm.org/8.0.0/cfe-8.0.0.src.tar.xz
wget http://releases.llvm.org/8.0.0/clang-tools-extra-8.0.0.src.tar.xz
wget http://releases.llvm.org/8.0.0/compiler-rt-8.0.0.src.tar.xz
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

解压

mv cfe-8.0.0.src clang
mv clang/ llvm-8.0.0.src/tools/

mv clang-tools-extra-8.0.0.src extra
mv extra/ llvm-8.0.0.src/tools/clang/

mv compiler-rt-8.0.0.src compiler-rt
mv compiler-rt llvm-8.0.0.src/projects/

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

配置并编译安装

mkdir build-8.0.0
cd build-8.0.0

  • 1
  • 2
  • 3
cmake -G "Unix Makefiles" -DCMAKE_INSTALL_PREFIX=/usr/local/clang -DCMAKE_BUILD_TYPE=Release -DLLVM_ENABLE_ASSERTIONS=On ../llvm-8.0.0.src/

  • 1
  • 2
make -j 4
  • 1

出现警告

在这里插入图片描述

最终报错 make: *** [Makefile:152:all] Error 2

https://www.bilibili.com/read/cv13148974/ 出处:bilibili
参考 https://blog.csdn.net/hans774882968/article/details/127043163
降低g++,gcc 版本
参考 https://www.bilibili.com/read/cv13148974/

尝试直接

 sudo apt install llvm
  • 1

在这里插入图片描述
退回到cmake … 重新编译

在这里插入图片描述

build/config.cmake 352 行
libbacktrace

第三次安装 成功

LLVM下载
使用预编译安装

sudo tar xvf clang+llvm-11.0.0-rc5-x86_64-linux-gnu-ubuntu-20.04.tar.xz
mv clang+llvm-11.0.0-rc5-x86_64-linux-gnu-ubuntu-20.04 llvm-11
export PATH=$PATH:/mnt/d/Linux/Ubuntu/data/packages/llvm-11/bin"
  • 1
  • 2
  • 3

linux 配置环境变量,直接用export是临时设置,重启后无法识别
改用vim

vim ~/.bashrc 
export PATH=/mnt/d/Linux/Ubuntu/data/packages/llvm-11/bin:$PATH
source ~/.bashrc 
  • 1
  • 2
  • 3

添加好环境变量后,which 查看/llvm-config

/mnt/d/Linux/Ubuntu/data/packages/llvm-11/bin/llvm-config

vim 编辑

deb http://apt.llvm.org/focal/ llvm-toolchain-focal-11 main
deb-src http://apt.llvm.org/focal/ llvm-toolchain-focal-11 main
  • 1
  • 2

shell执行

sudo apt update

sudo apt install clang-11
  • 1
  • 2
  • 3

编译TVM
出现以下问题
在这里插入图片描述
7
参考此篇blog

重点!! 不要用cmd git clone,要进入wsl直接linux 下载预编译版本。!!
重点!! 不要用cmd git clone,要进入wsl直接linux 下载预编译版本。!!
重点!! 不要用cmd git clone,要进入wsl直接linux 下载预编译版本。!!

安装tvm,用vim .bashrc配置环境没有作用,直接用以下命令,从build目录退出到tvm目录

cd ..
cd python
#确认python子环境是否激活为tvmBuild,不要再base当中使用
conda activate tvmBuild
python setup.py install --user
  • 1
  • 2
  • 3
  • 4
  • 5

安装依赖包

conda install  numpy decorator attrs  # 必须安装
conda install tornado psutil xgboost cloudpickle #选择安装
  • 1
  • 2

测试环境

python
import tvm
from tvm import relay
  • 1
  • 2
  • 3

打开vscode测试,成功

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号