1.
sudo apt install build-essential cmake git pkg-config libgtk-3-dev libavcodec-dev libavformat-dev libswscale-dev libv4l-dev libxvidcore-dev libx264-dev libjpeg-dev libpng-dev libtiff-dev gfortran openexr libatlas-base-dev python3-dev python3-numpy
libtbb2 libtbb-dev libdc1394-22-dev libopenexr-dev libgstreamer-plugins-base1.0-dev libgstreamer1.0-dev
2. 下载源文件.tar.gz文件,可以去github,也可以找镜像,例如这个网址
https://www.bzblog.online/wordpress/index.php/2020/03/09/opencvdownload/
下载之后
tar zxvf opencv.tar.gz
cd opencv-4.5.1
mkdir build
cd build
cmake ..
make
等待完成之后
sudo make install
3.
sudo su # 换成root用户
echo "/usr/local/lib" > /etc/ld.so.conf.d/opencv.conf
然后编辑/etc/bash.bashrc文件(依然是root用户),在文件的末尾两行加上
PKG_CONFIG=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
export PKG_CONFIG_PATH
保存后让它生效
source /etc/bash.bashrc
ctrl+d # 退出root用户
cd /usr/local/lib
sudo mkdir pkgconfig
cd pkgconfig
sudo touch opencv.pc
sudo touch opencv4.pc
修改上面两个.pc文件内容为
prefix=/usr/local
exec_prefix=${prefix}
includedir=${prefix}/include
libdir=${exec_prefix}/lib
Name: opencv
Description: The opencv library
Version:4.5.1
Cflags: -I${includedir}/opencv4
Libs: -L${libdir} -lopencv_stitching -lopencv_objdetect -lopencv_calib3d -lopencv_features2d -lopencv_highgui -lopencv_videoio -lopencv_imgcodecs -lopencv_video -lopencv_photo -lopencv_ml -lopencv_imgproc -lopencv_flann -lopencv_core
~
4. 执行指令:
ldconfig -p | grep opencv
显示出所有的opencv动态库则表示opencv配置成功
5. 测试
#include <opencv2/opencv.hpp>
using namespace cv;
int main(){
Mat img = imread("./1.jpg");
imshow("photo", img);
waitKey(0);
return 0;
}
编译
g++ -o main showPhoto.cpp `pkg-config opencv4 --cflags --libs` -I/usr/local/include/opencv4
参考了几个帖子,每个帖子对我而言都不完整,中间有一些很坑的地方,出于时间关系,就不仔细写了。
经过反复尝试修改之后成功!
参考
https://blog.csdn.net/WJ_SHI/article/details/107605439
https://blog.csdn.net/PecoHe/article/details/97476135