一、编译详细流程
1.环境
VMwareWorkstation16.0+Ubuntu20.04+OpenCV-4.9.0+CMake3.5
2.Opencv源码包下载
首先去OpenCV官网https://opencv.org/下载源码包,我这里选择的是OpenCV-4.9.0。点击Releases,下载Sources版本。
将下载好的压缩包放在根目录下并解压:
2.1 安装依赖
注:一定要先安装依赖以后再去编译,如果不装依赖,编译opencv和项目都不会报错,但一运行就报错!于是你又要返回来先装依赖,然后重新编译opencv,相当于之前编译那么长时间都是白搭。
①安装g++, cmake, make, wget, unzip,若已安装,此步跳过
sudo apt install -y g++
sudo apt install -y cmake
sudo apt install -y make
sudo apt install -y wget unzip
②安装opencv依赖的库
sudo apt-get install build-essential libgtk2.0-dev libgtk-3-dev libavcodec-dev libavformat-dev libjpeg-dev libswscale-dev libtiff5-dev
sudo apt-get install pkg-config #这个依赖也要装,要不最后会出现报错,验证的时候。
如果安装依赖时很慢,则需要换源,加快下载速度,换源流程如下:
可以直接参考这篇微博:小白教程 虚拟机换源 图形界面换源 命令行换源_win7虚拟机如何换源-优快云博客
选择左上角的Ubuntu软件,点击右侧的小三角形。
选择 其他站点…
这里可以自己选择一个中国的服务器,也可以点击右上角的 选择最佳服务器 来自动选择一个适合的服务器。
选择好以后,点击右下角的 选择服务器 。
点击完成后会出现如下弹框,这里可以选择关闭,也可以选择重新载入。
等待更新结束后,打开终端,如图,输入如下命令回车进行更新。
sudo apt update
2.2 开始Cmake配置和编译Opencv
然后打开解压后的opencv-4.9.0文件夹,新建一个<font style="color:rgb(199, 37, 78);background-color:rgb(249, 242, 244);">build</font>
文件夹,进入到build文件夹下,打开终端,运行如下命令:
sudo cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/user/local ..
然后接着输入<font style="color:rgb(199, 37, 78);background-color:rgb(249, 242, 244);">sudo make</font>
命令,编译时间大约1小时。
之后接着在终端输入如下命令:
sudo make install
2.3 验证
至此,Ubuntu下的OpenCV已安装成功,可以通过查看OpenCV版本来验证一下,命令行输入如下指令:
pkg-config --modversion opencv
出现以上报错,解决方法如下:
cd /usr/local/lib
sudo mkdir pkgconfig
cd pkgconfig
sudo touch opencv.pc
sudo vim opencv.pc
首先建一个新的文件夹:pkgconfig
然后cd到这个文件夹下,新建opencv.pc文件;
再打开opencv.pc文件,文件内输入:
prefix=/usr/local
exec_prefix=${prefix}
includedir=${prefix}/include
libdir=${exec_prefix}/lib
Name: opencv
Description: The opencv library
Version:4.9.0
Cflags: -I${includedir}/opencv4
Libs: -L${libdir} -lopencv_shape -lopencv_stitching -lopencv_objdetect -lopencv_superres -lopencv_videostab -lopencv_calib3d -lopencv_features2d -lopencv_highgui -lopencv_videoio -lopencv_imgcodecs -lopencv_video -lopencv_photo -lopencv_ml -lopencv_imgproc -lopencv_flann -lopencv_core
参考
1、VMware虚拟机中Ubuntu16.04系统下进行OpenCV4.4的安装编译_虚拟机安装opencv-优快云博客
2、Ubuntu 20.04搭建OpenCV 4.5.0 & C++环境_ubuntu opencv4.5.0-优快云博客