Nvidia Jetson Orin NX配置环境配置环境
先导片:Jetson采用arm64架构
一、安装jetson5.1.2
安装好jetson自带cuda、cudnn和tensorRT
-
更换源
sudo vi /etc/apt/sources.list.d/nvidia-l4t-apt-source.list
-
更新源
sudo apt upgrade
sudo apt update
sudo apt dist-upgrade
sudo reboot
-
安装jetson
sudo apt install nvidia-jetpack
二、安装jtop
-
安装
sudo apt install python3-pip sudo -H pip3 install -U pip sudo -H pip install jetson-stats
-
查看
sudo jtop
三、配置CUDA和cuDNN
-
配置环境变量
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
-
复制文件到cuda目录
cd /usr/include && sudo cp cudnn* /usr/local/cuda/include cd /usr/lib/aarch64-linux-gnu && sudo cp libcudnn* /usr/local/cuda/lib64
-
查看CUDA
nvcc -V
-
修改文件权限
sudo chmod 777 /usr/local/cuda/include/cudnn.h sudo chmod 777 /usr/local/cuda/lib64/libcudnn*
-
重新软链接
#这里的8.6.0和8对应安装的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
- 查看cuDNN
dpkg -l libcudnn8
8. 报错libopenblas.so.0: cannot open shared object file: No such file or director
sudo apt-get install libopenblas-dev
9. 对于上一条命令缺少或损坏的软件包进行修复,重新安装正确版本的sudo apt-get -f install
- 卸载
sudo apt-get --purge remove XXX sudo apt-get autoremove
四、安装Pytorch
-
Pytorch
torch官方教程
torch下载文档
torch下载地址
torch2.0.0
对应torchvision0.15.1
pip install torch-2.0.0+nv23.05-cp38-cp38-linux_aarch64.whl
测试
import torch torch.__version__ torch.cuda.is_available() torch.cuda.current_device() torch.cuda.get_device_name()
-
torchvision
torchvision下载sudo apt-get install libjpeg-dev zlib1g-dev libpython3-dev libopenblas-dev libavcodec-dev libavformat-dev libswscale-dev
将解压后的文件夹命名为torchvision
export BUILD_VERSION=0.15.1
python3 setup.py install --user
需要很长时间。。。
测试import torchvision
五、安装OpenCV
在官方仓库下载opencv 与opencv_contrib 源码(同一版本)。以opencv 4.5.4和opencv_contrib 4.5.4为例。
- 安装依赖
sudo apt install build-essential cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev \
python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libdc1394-22-dev python3-pip python3-numpy
- 卸载自带的opencv
sudo apt purge libopencv-dev libopencv-python libopencv-samples libopencv*
sudo apt autoremove
sudo apt-get update
- 将opencv-4.5.4和opencv_contrib进行解压
tar -xzvf opencv-4.5.4.tar.gz
tar -xzvf opencv_contrib-4.5.4.tar.gz
- 再将opencv_contrib移动到 opencv目录下
- opencv目录下创建build 文件,执行 cmake
cd opencv
mkdir build
cd build
cmake \
-D WITH_CUDA=ON \
-D CUDA_ARCH_BIN="8.7" \
-D CUDA_FAST_MATH=ON \
-D WITH_cuDNN=ON \
-D OPENCV_DNN_CUDA=ON \
-D cuDNN_VERSION='8.6' \
-D cuDNN_INCLUDE_DIR='/usr/include/' \
-D CUDA_ARCH_PTX="" \
-D CUDA_NVCC_FLAGS="--expt-relaxed-constexpr" \
-D OPENCV_EXTRA_MODULES_PATH=../opencv_contrib-4.5.4/modules \
-D WITH_GSTREAMER=ON \
-D WITH_GSTREAMER_0_10=OFF \
-D WITH_LIBV4L=ON \
-D WITH_CUBLAS=ON \
-D WITH_QT=ON \
-D WITH_OPENGL=ON \
-D WITH_TBB=ON \
-D BUILD_opencv_python3=ON \
-D BUILD_TESTS=OFF \
-D BUILD_PERF_TESTS=OFF \
-D BUILD_EXAMPLES=OFF \
-D CMAKE_BUILD_TYPE=RELEASE \
-D CMAKE_INSTALL_PREFIX=/usr/local \
-D ENABLE_FAST_MATH=ON \
..
查看设备算力
其中-D cuDNN_VERSION
版本要和开发板对应,-D OPENCV_EXTRA_MODULES_PATH
建议填写opencv_contrib里modules的绝对路径,-D CMAKE_INSTALL_PREFIX
为安装路径。
sudo make -j10
sudo make install
最后配置环境
sudo gedit /etc/ld.so.conf.d/opencv.conf
在打开的文本里面输入:
/usr/local/lib
保存退出,然后在终端输入以下命令即可安装成功
sudo ldconfig