Ubuntu20.04安装Nvidia显卡驱动、CUDA11.3、CUDNN、TensorRT、Anaconda、ROS/ROS2

1.更换国内源

打开终端,输入指令:

bash 复制代码
wget http://fishros.com/install -O fishros && . fishros

选择【5】更换系统源,后面还有一个要输入的选项,选择【0】退出,就会自动换源。

2.安装NVIDIA驱动

这一步最痛心了家人们,网上的教程太多了,我总是想着离线安装,每次安装都无法开机,要不就卡在锁屏界面,要不就黑屏,要不就卡在snaped界面,重装系统装了七八次终于成功了!

1.点击左下角那9个点,找到软件更新,点击。
2.找到附加驱动,选择一个你需要的nvidia driver版本

注意:安装的版本号后面是没有东西的,不要选择 "-server" 或者 "-open"

然后重启电脑,输入nvidia-smi , 就可以看到显卡驱动安装成功。

3.安装CUDA

下载地址:

CUDA Toolkit Archive | NVIDIA DeveloperPrevious releases of the CUDA Toolkit, GPU Computing SDK, documentation and developer drivers can be found using the links below. Please select the release you want from the list below, and be sure to check www.nvidia.com/drivers for more recent production drivers appropriate for your hardware configuration.https://developer.nvidia.com/cuda-toolkit-archive

这里我下载的是CUDA11.3.1,下载命令如下:

bash 复制代码
wget https://developer.download.nvidia.com/compute/cuda/11.3.1/local_installers/cuda_11.3.1_465.19.01_linux.run
安装CUDA:
bash 复制代码
sudo bash cuda_11.3.1_465.19.01_linux.run --override

(1)他会问你已经有了一个nvidia驱动,是否继续,点击continue.

(2)输入accept

(3)进入CUDA_Installer界面,按上下箭头,选择 Driver那一项,回车取消勾选(因为我们刚才已经安装driver了,安装cuda默认会再安装一遍,这里我们就不需要了)。然后移动到 install,回车继续安装。

安装完成后,会有一个summary如下图,这个界面不要动,重新打开一个终端:

(4)在新终端输入

bash 复制代码
sudo gedit ~/.bashrc

在文件最下面加入两句话,这两个路径就是上面summary里面的,直接复制过来就可以:

bash 复制代码
export PATH="/usr/local/cuda-11.3/bin$PATH"
export LD_LIBRARY_PATH="/usr/local/cuda-11.3/lib64:$LD_LIBRARY_PATH"

(5)执行命令 source ~/.bashrc ,然后输入 nvcc -V ,就可以看到cuda 的版本了。

4.安装CUDNN

下载地址

https://developer.nvidia.com/rdp/cudnn-archivehttps://developer.nvidia.com/rdp/cudnn-archive

安装:

解压后将相关文件复制到usr/local/cuda-11

bash 复制代码
sudo cp cuda/include/cudnn.h /usr/local/cuda-11.3/include
sudo cp cuda/lib64/libcudnn* /usr/local/cuda-11.3/lib64
sudo chmod a+r /usr/local/cuda-11.3/include/cudnn.h 
sudo chmod a+r /usr/local/cuda-11.3/lib64/libcudnn*

5.安装Anaconda

下载:

Free Download | AnacondaAnaconda's open-source Distribution is the easiest way to perform Python/R data science and machine learning on a single machine.https://www.anaconda.com/download#downloads

安装:
bash 复制代码
sudo bash Anaconda_xxx.sh

安装过程注意事项:

(1)安装位置不要默认的root,因为会有权限问题,可以选择安装在/home目录下,记住这个安装目录,下面要用。

(2)安装完成后,会问你是否要自启动anaconda,直接回车就好(默认是no),因为我们要anaconda和ROS环境共存

(3)再次编辑bashrc文件

bash 复制代码
sudo gedit ~/.bashrc

在最后加入这样一句话,请替换为上面的anaconda3的安装目录:

bash 复制代码
alias setconda='. /home/anaconda3/bin/activate'

然后保存退出,在终端重新source一下: source ~/.bashrc

(4) 然后每次想用anaconda的时候,直接在终端输入"setconda",就可以切换到(base)环境。

6.安装TensorRT

下载:

Log in | NVIDIA Developerhttps://developer.nvidia.com/tensorrt-download

安装:

(1) 解压压缩包:

bash 复制代码
tar -zxvf TensorRT-8.2.5.1.Linux.x86_64-gnu.cuda-11.4.cudnn8.2.tar.gz

(2)进入虚拟anaconda虚拟环境,这里我的环境名称是py39

bash 复制代码
setconda
conda activate py39

(3) 安装依赖

bash 复制代码
pip install 'pycuda<2021.1'
pip install onnxruntime-gpu==1.11

onnxruntime-gpu和CUDA版本的对应关系为:

NVIDIA - CUDA | onnxruntimeInstructions to execute ONNX Runtime applications with CUDAhttps://onnxruntime.ai/docs/execution-providers/CUDA-ExecutionProvider.html

(4) 配置环境

bash 复制代码
sudo gedit ~/.bashrc
 
# 末尾添加以下两条路径,需根据解压的实际路径
export LD_LIBRARY_PATH=$PATH:/home/hhh/TensorRT-8.2.5.1/lib:$LD_LIBRARY_PATH
export LIBRARY_PATH=$PATH:/home/hhh/TensorRT-8.2.5.1/lib::$LIBRARY_PATH
 
# 重新source一下
source ~/.bashrc

(5)安装TensorRT

bash 复制代码
cd TensorRT-8.2.5.1/python
# 按tab补全的时候到cp3就停了,我的python版本是3.9,所以我输入cp39再按tab补全
pip install tensorrt-8.2.5.1-cp39-none-linux_x86_64.whl 
 
# 安装依赖
cd TensorRT-8.2.5.1/graphsurgeon
pip install graphsurgeon-0.4.5-py2.py3-none-any.whl

7.安装ROS

打开终端,输入指令:

bash 复制代码
wget http://fishros.com/install -O fishros && . fishros

选择【1】安装ROS

安装好后,可以看到ROS和anaconda都可以使用:

8.参考

《conda和ros环境共存方法》

《【ubuntu环境配置】超详细ubuntu20.04/22.04安装nvidia驱动/CUDA/cudnn》

《TensorRT学习笔记--Ubuntu20.04安装TensorRT 8.2.5》

《Ubuntu20.04 显卡驱动、cuda安装》

《Ubuntu20.04LTS系统CUDA已经安装但nvcc -V显示command not found》

相关推荐
F_D_Z14 分钟前
【Python】数据可视化之聚类图
python·信息可视化·聚类
DanCheng-studio1 小时前
毕业设计项目 大数据电影数据分析与可视化系统(源码+论文)
python·毕业设计·毕设
程序猿阿伟2 小时前
《C++音频降噪秘籍:让声音纯净如初》
开发语言·c++·网络协议
暮毅2 小时前
四、Drf认证组件
python·django·drf
Tech_gis2 小时前
C++ 观察者模式
开发语言·c++·观察者模式
卑微求AC2 小时前
继电器原理及应用
c语言·开发语言·51单片机·嵌入式
曳渔3 小时前
Java-数据结构-反射、枚举 |ू・ω・` )
java·开发语言·数据结构·算法
laocooon5238578863 小时前
java 模拟多人聊天室,服务器与客户机
java·开发语言
风槐啊3 小时前
六、Java 基础语法(下)
android·java·开发语言
DanCheng-studio3 小时前
毕设 基于大数据情感分析的网络舆情分析系统(源码+论文)
python·毕业设计·毕设