Jetson系列开发板架构是arm64,因此是基于arm64相关的环境配置

提醒:可自行查看NVIDIA官方网站查询安装中的疑问和步骤!!!

步骤1、安装jetpack

Jetson Development Pack (JetPack) 是一个NVIDIA按需提供的一体化软件包,捆绑并安装了适用于NVIDIA Jetson 嵌入式平台的所有开发用软件工具。 JetPack 包括适用于以下功能的工具: CUDA、TensorRT、cuDNN、OpenCV等。
NVIDIA JetPack SDK 是构建端到端加速 AI 应用的全面解决方案。JetPack 为硬件加速的边缘 AI 开发提供了完整的开发环境。JetPack 支持所有 Jetson 模组和开发者套件。

安装cuda前先安装jetpack,参考的是nvidia官方教程,即以下代码:

sudo apt upgrade
sudo apt update
sudo apt dist-upgrade
sudo reboot
sudo apt install nvidia-jetpack

最后一句命令可能要1个小时左右,在网络较好的情况下进行,如果安装中中断,再次运行最后一句命令即可,直到安装完成。

安装成功后,再安装jtop,jtop是Jetson 系列非常著名的监控工具,请执行以下指令进行安装:

sudo apt install python3-pip
sudo -H pip3 install -U pip
sudo -H pip install jetson-stats

然后执行下面启动指令就能开启这个监控工具:

jtop

会出现如下画面:
在这里插入图片描述

按 q键退出当前画面,如果启动失败,则重启orin,再次尝试。
当然这个不是重点,重点是安装jtop后,可以使用sudo jetson_release命令查看jetson版本号以及与它适配的cuda、cudnn、TensorRT、OpenCV等等版本,如下图:
在这里插入图片描述

步骤2、配置cuda环境

在桌面打开终端,输入如下命令:
(学习使用Vim编辑器指令:插入模式

i:在当前光标位置前插入
a:在当前光标位置后插入
o:在当前行下插入新行
I:在当前行行首插入
A:在当前行行尾插入

命令模式

:w:保存文件
:q:退出Vim
:wq:保存并退出
:q!:不保存强制退出
:x:保存并退出(等同于 :wq)

)

vim ~/.bashrc
#在文本末输入如下代码:
export LD_LIBRARY_PATH=/usr/local/cuda/lib64
export PATH=/usr/local/cuda/bin:$PATH
export CUDA_HOME=/usr/local/cuda
#更新环境变量配置
source ~/.bashrc

查看版本号:

nvcc -V

如下图:
在这里插入图片描述

步骤3:配置cuDNN环境

在终端输入如下命令:
#复制文件到cuda目录下

cd /usr/include && sudo cp cudnn* /usr/local/cuda/include
cd /usr/lib/aarch64-linux-gnu && sudo cp libcudnn* /usr/local/cuda/lib64

#修改文件权限,修改复制完的头文件与库文件的权限,所有用户都可读,可写,可执行:
sudo chmod 777 /usr/local/cuda/include/cudnn.h 
sudo chmod 777 /usr/local/cuda/lib64/libcudnn*

#重新软链接,这里的8.6.08对应安装的cudnn版本号和首数字
cd /usr/local/cuda/lib64

sudo ln -sf libcudnn.so.8.6.0 libcudnn.so.8

sudo ln -sf libcudnn_ops_train.so.8.6.0 libcudnn_ops_train.so.8
sudo ln -sf libcudnn_ops_infer.so.8.6.0 libcudnn_ops_infer.so.8

sudo ln -sf libcudnn_adv_train.so.8.6.0 libcudnn_adv_train.so.8
sudo ln -sf libcudnn_adv_infer.so.8.6.0 libcudnn_adv_infer.so.8

sudo ln -sf libcudnn_cnn_train.so.8.6.0 libcudnn_cnn_train.so.8
sudo ln -sf libcudnn_cnn_infer.so.8.6.0 libcudnn_cnn_infer.so.8

sudo ldconfig

输入以下命令:

dpkg -l libcudnn8

如果出现以下信息则表示正确:
在这里插入图片描述

按 q键退出当前画面。
(在验证之前,我参考了文中提到的参考博客里验证的方法,如果验证失败,先运行sudo apt-get install libfreeimage3 libfreeimage-dev,再次验证)

步骤4、安装Anaconda

1、下载
anaconda的下载地址是:https://repo.anaconda.com/archive/ (anaconda清华镜像源),我选择的版本是:Anaconda3-2022.10-Linux-aarch64.sh,将下载的shell文件拷贝至home文件夹(也可以不拷贝),在home中打开终端,输入:bash Anaconda3-2022.10-Linux-aarch64.sh,接下来的安装过程请参考conda安装(从第2步开始)。
2、安装Anaconda
输入命令

bash Anaconda3-2022.10-Linux-aarch64.sh

在这里插入图片描述

回车后查看许可证,按 q 退出许可证,然后输入 yes 表示同意
在这里插入图片描述

确认安装的路径,一般直接回车安装在默认的 /home/你的名字/anaconda3
在这里插入图片描述

很快就安装完毕。输入 yes 来确认使用 conda init 来启动
在这里插入图片描述

3、启动环境变量如果现在输入 conda,会显示找不到命令
在这里插入图片描述

需要启动已经修改环境变量,输入以下命令(以后都不用再 source 了,因为启动 Ubuntu 会自动 source)

source ~/.bashrc

这时候会发现出现了 (base)
在这里插入图片描述

如果你查看 ~/.bashrc,可以看到已经添加了 conda 的路径

4、升级 conda

如果当前安装后,不是最新版本,可以通过以下命令升级

conda update -n base -c defaults conda

在这里插入图片描述

在这里插入图片描述

步骤5:安装Pytorch

打开Pytorch for Jetson 的官方网站查看具体详细安装步骤!!!
https://forums.developer.nvidia.com/t/pytorch-for-jetson/72048

conda创建名为torch3.8的新环境,python版本最好选择3.8(可使用multiprocessing多进程之间的SharedMemory共享内存):

conda create -n torch3.8 python=3.8

#打开虚拟环境

conda activate torch3.8

在这里插入图片描述

在步骤1中查看jetpack的版本为5.1.2

sudo apt-cache show nvidia-jetpack

在这里插入图片描述

在为Jetson安装PyTorch之前,请确保:
1.在您的Jetson设备上安装JetPack。
2.安装PyTorch所需的系统包:

sudo apt-get -y update; 
sudo apt-get install -y python3-pip libopenblas-dev;

3.如果安装24.06 PyTorch或更高版本,则需要先安装cusparelt:

wget 
raw.githubusercontent.com/pytorch/pytorch/5c6af2b583709f6176898c017424dc9981023c28/.ci/docker/
common/install_cusparselt.sh 
export CUDA_VERSION=12.1 # as an example   
bash ./install_cusparselt.sh

接下来,按照以下步骤安装PyTorch:

1.使用以下命令导出:

export TORCH_INSTALL=https://developer.download.nvidia.cn/compute/redist/jp/v511/pytorch/torch-2.0.0+nv23.05-cp38-cp38-linux_aarch64.whl

或者,下载文件并设置。

export TORCH_INSTALL=path/to/torch-2.2.0a0+81ea7a4+nv23.12-cp38-cp38-linux_aarch64.whl

2.安装PyTorch。

python3 -m pip install --upgrade pip; python3 -m pip install numpy==1.26.1; python3 -m pip install --no-cache $TORCH_INSTALL

如果你想安装特定版本的PyTorch,请将TORCH_install替换为:

https://developer.download.nvidia.com/compute/redist/jp/v$JP_VERSION/pytorch/$PYT_VERSION

Torch安装完成:
在这里插入图片描述

3.查看安装的Pytorch版本:
安装完成后,启动 Python,因为torch是python环境下的包:

python

在这里插入图片描述

验证安装:

import torch
import torchvision
print(torch.__version__)
print(torch.cuda.is_available())

确保 torch.cuda.is_available() 返回 True,这表示 CUDA 支持已成功启用。

在这里插入图片描述

步骤6:安装torchvision

打开虚拟环境

conda activate torch3.8

进入终端的虚拟环境输入下列命令

sudo apt-get update
sudo apt-get upgrade

参考官方链接:

sudo apt-get install libjpeg-dev zlib1g-dev libpython3-dev libavcodec-dev libavformat-dev libswscale-dev

进入终端的虚拟环境输入以下命令(如果速度过慢,直接在torchvision下载链接找对应版本的zip解压):

我的torch版本是2.0.0,对应的torchvision版本是0.15.1.
在这里插入图片描述

git clone --branch v0.15.1 https://github.com/pytorch/vision torchvision
cd torchvision
export BUILD_VERSION=0.15.1
python3 setup.py install --user

其中最后一句命令时间过长,如果卡在安装某个依赖包,可ctrl+c打断并用pip单独下载这个包,再继续运行最后的命令,直到运行成功。

注意pytorch和torchvision的对应关系,我安装的pytorch版本为2.0.0,所以torchvision安装v0.15.1。

上步完成后,退回到当前编译包位置:

cd

验证pytorch和torchvision:

python
import torch
import torchvision
print(torch.__version__)
print(torchvision.__version__)
print(torch.cuda.is_available())

在这里插入图片描述
确保 torch.cuda.is_available() 返回 True,这表示 CUDA 支持已成功启用。

如果输入import torchvison时有警告,原因是你在torchvison文件夹中打开了终端,执行import,相当于”体内“调包。所以需要退出当前编译包位置。最直接的方式就是退出当前终端,在桌面上重新打开一个终端,然后进入虚拟环境(conda activate torch3.8),输入python,最后运行import torchvison。

注:如果出现安装版本不一致的问题,可以卸载现有安装:

卸载任何不兼容的 torch 和 torchvision 版本:

 pip uninstall torch torchvision

步骤7:安装tensorrt

Jetpack已经给我们自动安装好了,但是安装位置在/usr/lib/python3.8/dist-packages/中,不能被虚拟环境中定位使用。因此需要我们手动操作一下:

找到tensorrt的安装位置/usr/lib/python3.8/dist-packages/
找到里面的tensorrt文件和tensorrt-8.5.2.2.dist-info文件
在这里插入图片描述

找到创建的虚拟环境/anaconda3/envs/torch3.8/lib/python3.8/site-packages
然后将以上两个文件复制粘贴到这个文件夹中即可
在这里插入图片描述

在虚拟环境中测试一下,运行如下指令:

python -c "import tensorrt;print(tensorrt.__version__)"

如果出现版本号,则成功:
在这里插入图片描述
后续可能出现的问题:

过高版本的numpy可能会导致代码运行tensorrt时报错,亲测卸载并重新安装1.21.3版本的numpy可解决:(暂未出现)

pip uninstall numpy
pip install -U numpy==1.21.3 

8、配置yolov7+pytracking环境

pip install matplotlib pandas tqdm
pip install opencv-python visdom tb-nightly scikit-image tikzplotlib gdown
pip install cython
pip install pycocotools
pip install lvis
pip install spatial-correlation-sampler
pip install jpeg4py
sudo apt-get install ninja-build
sudo apt-get install libturbojpeg
#通信模块需要
pip install pyserial

9、Pycharm安装开发包

1、PyCharm依赖包导入导出方法

在PyCharm的terminal中输入:

(1)将依赖包导出至requirements文件

pip freeze > requirements.txt

(2)从requirements文件中导入依赖包

pip install -r requirements.txt

从位于桌面的requirements.txt文件导入

pip install -r /home/pc/Desktop/requirements.txt

2、命令行修改法
(1)命令行临时修改法

在用pypi下载python包的时候,可以直接使用pip install packagename -i参数,指定下载源的URL

pip install ping3 -i https://pypi.tuna.tsinghua.edu.cn/simple

(2)命令行永久修改法

使用pip config set global.index-url来直接指定下载源的URL,这样就不用手动修改配置文件了

pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐