从零安装Ubuntu20.04+cuda12.3+cudnn8.9.7+ancadacon3+tensorrt8.6.1+opencv4.7.0

环境:

显卡:3090Ti

CPU:I9

内存:64G

系统:Ubuntu20.04

安装顺序:

1、下载各个软件版本

(1)ubuntu-20.04.6-desktop-amd64.iso

(2)rufus-4.4.exe(制作ubuntu20的启动盘,需8GU盘)

(3)opencv4.7

(4)cuda_12.4.0_550.54.14_linux.run

wget https://developer.download.nvidia.com/compute/cuda/12.4.0/local_installers/cuda_12.4.0_550.54.14_linux.run
sudo sh cuda_12.4.0_550.54.14_linux.run

(5)cudnn-linux-x86_64-8.9.7.29_cuda12-archive.tar.xz

(6)TensorRT-8.6.1.6.Linux.x86_64-gnu.cuda-12.0.tar.gz

(7)Anaconda3-2023.09-0-linux-x86_64

编译准备:

sudo apt update

sudo apt install build-essential cmake unzip pkg-config

sudo apt install libjpeg-dev libpng-dev libtiff-dev

sudo apt install libavcodec-dev libavformat-dev libswscale-dev

sudo apt install libv4l-dev libxvidcore-dev libx264-dev libx265-dev

sudo apt install libgtk-3-dev

sudo apt install libblas-dev liblapack-dev gfortran

sudo apt install yasm libfaac-dev libmp3lame-dev libopus-dev libtheora-dev libvorbis-dev libxext-dev libxfixes-dev

一、安装ffmpeg

(1)解压

unzip FFmpeg-release-6.0.zip

​(2)切换到根目录

cd FFmpeg-release-6.0.zip

​(3)执行如下命令(构建编译)

./configure --prefix=/usr/local --enable-pic --enable-shared --disable-yasm --enable-gpl --enable-libmp3lame --enable-libopus --enable-libx264 --enable-libx265 --enable-nonfree --enable-pthreads

​(4)执行编译

make

​(5)安装

sudo make install

二、安装curl

第一种方式:ubuntu命令行安装curl

​sudo apt install curl

​sudo apt install libcurl4-openssl-dev

​sudo apt install libcurl4-nss-dev

​sudo apt install libcurl4-gnutls-dev

​第二种方式:如果使用的linux系统不支持命令行安装,可以采用编译安装,操作如下

​unzip curl-7.83.0.zip

​cd curl-7.83.0

​./configure

make

sudo make install

三、安装libevent

第一步:ubuntu命令行的方式安装libevent依赖库

sudo apt install libssl-dev

​第二步:开始编译安装

​1、解压

tar -xzvf libevent-2.1.12-stable.tar.gz

​2、切换到根目录

cd libevent-2.1.12-stable

​mkdir build & cd build

​cmake -D CMAKE_BUILD_TYPE=Release ..

make

sudo make install

四、安装jsoncpp

1、解压

unzip jsoncpp-master.zip

2、切换到根目录

cd jsoncpp-master

​mkdir build & cd build

​cmake -D CMAKE_BUILD_TYPE=Release ..

make

sudo make install

五、安装opencv(编译安装)

(1)cudnn安装

查询cuda版本,nvcc -V。如果多版本,修改链接改变版本:

nvcc --version

sudo cp include/cudnn* /usr/local/cuda-12.3/include/

sudo cp lib64/libcudnn* /usr/local/cuda-12.3/lib64/

sudo chmod a+r /usr/local/cuda-12.3/include/cudnn*

sudo chmod a+r /usr/local/cuda-12.3/lib64/libcudnn*

sudo rm -rf /usr/local/cuda

sudo ln -s /usr/local/cuda-12.3/ /usr/local/cuda

nvcc --version

(2)opencv

第一步:使用命令行安装opencv依赖库,如果linux系统不支持命令行安装如下依赖库,那就需要手动编译安装了

sudo apt install build-essential libgtk2.0-dev  

sudo apt libjpeg.dev libtiff5.dev //可以不安装

​第二步:编译安装

​切换到根目录

cd opencv-4.7/opencv/sources

​创建构建文件

mkdir build & cd build

​cmake -D CMAKE_BUILD_TYPE=Release \

-D CMAKE_INSTALL_PREFIX=/usr/local \

-D OPENCV_EXTRA_MODULES_PATH=../../../opencv_contrib-4.7.0/modules \

-D OPENCV_GENERATE_PKGCONFIG=ON \

-D WITH_TBB=ON \

-D ENABLE_FAST_MATH=1 \

-D WITH_CUBLAS=1 \

-D OPENCV_ENABLE_NONFREE=ON \

-D INSTALL_C_EXAMPLES=OFF \

-D INSTALL_PYTHON_EXAMPLES=OFF \

-D BUILD_opencv_python3=OFF \

-D BUILD_opencv_python3_tests=OFF \

-D CUDA_nppi_LIBRARY=true \

-D BUILD_EXAMPLES=ON

-D WITH_CUDA=ON

-D WITH_CUDNN=ON

-D OPENCV_DNN_CUDA=ON

-D WITH_CUBLAS=ON

-D CUDA_TOOLKIT_ROOT_DIR=/usr/local/cuda

-D OpenCL_LIBRARY=/usr/local/cuda/lib64/libOpenCL.so

-D OpenCL_INCLUDE_DIR=/usr/local/cuda/include/ \

-D BUILD_TIFF=ON \

-D OPENCV_GENERATE_SETUPVARS=OFF \

..

​make -j 8

​sudo make install

错误:

(1)安装有hpp失败,要做static_cast转换,参考最后的代码

`cuda`: fix for compatibility with CUDA Toolkit >= 12.2.0 by cudawarped · Pull Request #24104 · opencv/opencv · GitHub

(2) ffmepge采用6.0,tiff开关需要打开

(3)库文件错误:

出现找不到curl4的问题:

sudo ln -s /usr/lib/x86_64-linux-gnu/libcurl.so.4.6.0 /usr/local/lib/libcurl.so.4

出现uuid链接引用问题:

ln -s /usr/lib/x86_64-linux-gnu/libuuid.so.1.3.0 /home/ubuntu/anaconda3/lib/libuuid.so.1

编译成功:

(4)其他参考:

Ubuntu 20.04源码编译安装OpenCV 4.7.0_ubuntu20.04安装opencv4.7 opencv-contrib-CSDN博客

ubuntu20.04安装tensorRT流程梳理-CSDN博客

ubuntu下cmake+opencv+cuda+cudnn+tensorRT开发环境配置_c++ opencv cuda tensorrt-CSDN博客

  • 20
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值