在Jetson Nano上运行YOLOv5时遇Torch依赖库缺失错误求助
问题:Jetson Nano运行YOLOv5时torch缺失libcublas.so.11依赖
环境与操作流程
- 硬件:Jetson Nano GPU
- 系统:Ubuntu 20.04
- Python版本:3.8
- 已完成的环境搭建命令:
git clone https://github.com/ultralytics/yolov5 cd yolov5 pip install -r requirements.txt
错误信息
运行detect.py时触发以下错误:
Traceback (most recent call last): File "detect.py", line 37, in <module> import torch File "/home/jetson/.local/lib/python3.8/site-packages/torch/__init__.py", line 198, in <module> _load_global_deps() File "/home/jetson/.local/lib/python3.8/site-packages/torch/__init__.py", line 151, in _load_global_deps ctypes.CDLL(lib_path, mode=ctypes.RTLD_GLOBAL) File "/usr/lib/python3.8/ctypes/__init__.py", line 373, in __init__ self._handle = _dlopen(self._name, mode) OSError: libcublas.so.11: cannot open shared object file: No such file or directory
解决方案
原因分析
Jetson Nano默认JetPack自带的CUDA版本为10.x(对应依赖库libcublas.so.10),但通过pip install安装的通用版torch要求CUDA 11.x(依赖libcublas.so.11),二者版本不匹配导致依赖缺失。
修复步骤
- 卸载当前不兼容的torch
pip uninstall torch -y
- 安装Jetson适配的torch版本
针对Python3.8、Ubuntu20.04的适配版本:
wget https://nvidia.box.com/shared/static/p57jwntv436lfrd78inwl7iml6p13fzh.whl -O torch-1.9.0-cp38-cp38-linux_aarch64.whl pip install torch-1.9.0-cp38-cp38-linux_aarch64.whl
- 安装匹配的torchvision
sudo apt-get install libjpeg-dev zlib1g-dev -y git clone --branch v0.10.0 https://github.com/pytorch/vision torchvision cd torchvision export BUILD_VERSION=0.10.0 python setup.py install --user
- 重新安装YOLOv5依赖
cd ../yolov5 pip install -r requirements.txt --force-reinstall
- 验证CUDA加载状态
运行以下Python代码确认torch正常识别CUDA:
import torch print(torch.cuda.is_available()) # 输出True即为成功
内容的提问来源于stack exchange,提问作者Sean Mabli
相关产品推荐
相关产品推荐

