PyTorch for Jetson - version 1.9.0 now available - Jetson Nano - NVIDIA Developer Forums
翻墙下载也挺快,别人有CSDN骗积分的
版本对应,pytorch和torchvision要对应,这俩要和Python版本对应


笔者最后安装Python3.6.9,pytorchv1.8, torchvision v0.9.0成功
笔者第一次:
安pytorch v1.5、torchvision v0.6.0 ,安torchvision报错segmentation fault---无解,版本原因

笔者第二次:
安pytorch v1.6、torchvision v0.7.0 import error报错bus error----无解,因为版本原因
怀疑过磁盘空间不足,df -lh查看,更换版本后消失
中间其他错误
OSError: libmpi_cxx.so.20: cannot open shared object file: No such file or directory
版本不对应时还出现过此问题
解决方案:

登入 https://pkgs.org/网站,在右上角的搜索框中输入libmpi_cxx.so.20,然后下载libopenmpi2_2.1.1-8_arm64.deb。
dpkg -i libopenmpi2_2.1.1-8_arm64.deb
提示下列错误或是相关包版本不对:

继续上网站https://pkgs.org/search/?q=libhwloc5搜libhwloc5----这里问女票才找到---吼吼吼
同样dpkg -i安装

最终正确安装的pytorch1.8,torchvision 0.9.0也报错
pytorch正确安装,torchvision 0.9.0版本也报了错,手动屏蔽了部分才编译成功
该处报错jpeg_mem_dest函数这有问题,找到用这的函数的地方也就是那个cpp文件,屏蔽这个函数重新安装--成功,试了试改但没改对,屏蔽可以,不知道使用起来有什么后果----暂时不管虽然可能是坑

3. 安装
当下载好pytorch的whl文件之后,直接用在下载目录用命令安装
# 这里示例是v1.8.0版本
pip3 install numpy torch-1.8.0-cp36-cp36m-linux_aarch64.whl
这里需要注意的是,默认下载的numpy是最新版本(我的是1.19.5),最新版本的numpy会出现指令不兼容的问题,所以会导致非法指令的问题:
这样我们最好将numpy的版本降级,这样就能解决这个问题
# v1.19.3版本可用
pip install numpy==1.19.3
安装好了pytorch之后,就是对应的视觉库torchvision了,我们在论坛上可以找到版本匹配表:
还是再安装对应的依赖库:
sudo apt-get install libjpeg-dev zlib1g-dev libpython3-dev libavcodec-dev libavformat-dev libswscale-dev
将 github 上大佬写好的torchvision库clone我们本地来
# torch1.8--torchvision0.9git clone --branch v0.9.0 https://github.com/pytorch/vision torchvision# 这里由于网络不稳等问题,我使用gitee进行clonegit clone --branch v0.9.0 https://gitee.com/rchen1997/torchvision torchvision
下载结束后,进入torchvision文件内进行安装:
cd torchvisionexport BUILD_VERSION=0.x.0 # where 0.x.0 is the torchvision version python3 setup.py install --usercd ../ # attempting to load torchvision from build dir will result in import error>>> import torch>>> print(torch.__version__)>>> print('CUDA available: ' + str(torch.cuda.is_available()))>>> print('cuDNN version: ' + str(torch.backends.cudnn.version()))>>> a = torch.cuda.FloatTensor(2).zero_()>>> print('Tensor a = ' + str(a))>>> b = torch.randn(2).cuda()>>> print('Tensor b = ' + str(b))>>> c = a + b>>> print('Tensor c = ' + str(c))>>> import torchvision>>> print(torchvision.__version__)成功~两天的配环境之路结束----抓紧拿faster-rcnn来试试。。。可能是分辨率太大帧率低死

免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删