在 ubuntu18.04 上编译安装 opencv4.3.0 并启用 cuda。
安装依赖
首先安装所需依赖,参考:Installing OpenCV from source on Ubuntu 18.04 machine
### first update and upgrade pre-install apt-get packages.
sudo apt-get update
sudo apt-get upgrade
### install developer tools
sudo apt -y install build-essential checkinstall cmake pkg-config
sudo apt -y install git gfortran
### install image I/O packages for loading various image file formats from disk
sudo apt -y install libjpeg8-dev libpng-dev
sudo add-apt-repository "deb http://security.ubuntu.com/ubuntu xenial-security main"
sudo apt install libjasper1 libjasper-dev
### GTK development library to build Graphical User Interfaces
sudo apt -y install libgtk-3-dev libtbb-dev qt5-default
### Other dependcies
sudo apt -y install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev libdc1394-22-dev
sudo apt -y install libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev
sudo apt -y install libatlas-base-dev
sudo apt -y install libfaac-dev libmp3lame-dev libtheora-dev
sudo apt -y install libxvidcore-dev libx264-dev
sudo apt -y install libopencore-amrnb-dev libopencore-amrwb-dev
sudo apt -y install libgphoto2-dev libeigen3-dev libhdf5-dev doxygen x264 v4l-utils
获取源码
从 GitHub 上下载源码,如果下载太慢,可以用码云来加速: 一招搞定GitHub下载加速!
mkdir opencv
cd opencv
### downloading opencv and opencv_contrib packages from their GitHub repositories
git clone https://github.com/opencv/opencv.git
git clone https://github.com/opencv/opencv_contrib.git
编译安装
编译过程中要从 github 上下载文件,由于网络原因无法下载,参考:修改Hosts临时解决GitHub的raw.githubusercontent.com无法链接的问题
通过
IPAddress.com
首页,输入raw.githubusercontent.com
查询到真实IP地址,编辑host文件
sudo vi /etc/hosts
199.232.4.133 raw.githubusercontent.com
建立编译文件夹
cd opencv
mkdir build
cd build
开始编译(/usr/local 可以换成自己的路径)
cmake -D CMAKE_INSTALL_PREFIX=/usr/local -D CMAKE_BUILD_TYPE=Release -D OPENCV_GENERATE_PKGCONFIG=ON -D ENABLE_CXX11=1 -D OPENCV_EXTRA_MODULES_PATH=../opencv_contrib/modules -D OPENCV_ENABLE_NONFREE=True -D INSTALL_PYTHON_EXAMPLES=ON -D INSTALL_C_EXAMPLES=ON -D WITH_CUDA=ON -D WITH_TBB=ON -D ENABLE_FAST_MATH=1 -D WITH_OPENMP=ON -D WITH_CUFFT=ON -D WITH_CUBLAS=ON ..
cmake 编译后使用 make 编译
make -j8 # 8 是指同时使用的线程数,越大越快,使用 nproc 来查看当前电脑cpu 核心数
安装
make install
验证
安装后,配置路径,参考:【opencv】ubuntu安装opencv4.2.0(支持cuda加速)
配置库路径
#打开下列文件
sudo vi /etc/ld.so.conf.d/opencv.conf
# 添加lib路径
/usr/local/lib # 安装到自定义路径则写 自定义路径/lib
# 更新
sudo ldconfig
配置 pkgconfig 路径
vi ~/.bashrc # vi ~/.zshrc for zsh user
添加下面内容
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
export PKG_CONFIG_PATH
命令行验证结果
pkg-config --modversion opencv4
成功