Fedora28安装opencv-4.1.0+opencv_contrib-4.1.0

Fedora28安装opencv-4.1.0+opencv_contrib-4.1.0
1.环境配置
OpenCV4.1.0和opencv_contrib-4.1.0的安装包大家可从GitHub上搜索下载,如果不想搜索,可从我的百度网盘下载(同时网盘内也上传了一些Cmake易下载失败的文件):
链接:https://pan.baidu.com/s/1aVCjkfw7Mh0rZe9iZle8gA
提取码:0s11
1.opencv官网下载最新的源码,点击“source”下载

Fedora28安装opencv-4.1.0+opencv_contrib-4.1.0
2.安装 cmake-gui
dnf install cmake
Fedora28安装opencv-4.1.0+opencv_contrib-4.1.0
dnf install cmake-gui
Fedora28安装opencv-4.1.0+opencv_contrib-4.1.0
生成图标

Fedora28安装opencv-4.1.0+opencv_contrib-4.1.0
3.安装依赖包
安装 gtk2 和 pkg-config ,如果不安装,后面使用opencv的highGUI会报错提示安装这两项。要确保安装成功,通过以下方法安装并检验:

1)pkg-config -version查看pkg-config的版本(本机测试是1.4.2)
Fedora28安装opencv-4.1.0+opencv_contrib-4.1.0
2)安装必要组建:(在root权限下)dnf install gtk2 gtk2-devel gtk2-devel-docs
Fedora28安装opencv-4.1.0+opencv_contrib-4.1.0
dnf install gcc-c++
Fedora28安装opencv-4.1.0+opencv_contrib-4.1.0
dnf install libopencv*
Fedora28安装opencv-4.1.0+opencv_contrib-4.1.0
3)可能还需要组建(可选,不行再装):dnf install gnome-devel*
Fedora28安装opencv-4.1.0+opencv_contrib-4.1.0

4)有些linux版本已经自带了gtk包,需要安装dnf install gtk2-devel
Fedora28安装opencv-4.1.0+opencv_contrib-4.1.0
5)安装成功后通过pkg-config --modversion gtk±2.0查看gtk版本
Fedora28安装opencv-4.1.0+opencv_contrib-4.1.0
Fedora28安装opencv-4.1.0+opencv_contrib-4.1.0
4.cmake
打开cmake-gui ,把OpenCV4.1.0+opencv_contrib-4.1.0文件解压拷贝到fedora系统里,将opencv_contrib-4.1.0文件夹改名为opencv_contrib,并放到opencv-4.1.0文件夹里。在opencv-4.1.0文件夹里建立build文件夹,命令:mkdir build 如下图所示:
Fedora28安装opencv-4.1.0+opencv_contrib-4.1.0
Fedora28安装opencv-4.1.0+opencv_contrib-4.1.0
Configure 结束后,如果 cmake 的主界面仍有红色区域,则再次点击 Configure 进行配置,直到红色区域完全消失。

Fedora28安装opencv-4.1.0+opencv_contrib-4.1.0
5.cmake配置
红色区域没了之后,进行下一步的配置
在 CMAKE_BUILD_TYPE 值处选择 Release
Fedora28安装opencv-4.1.0+opencv_contrib-4.1.0
在 OPENCV_EXTRA_MODULES_PATH 处,为其设置 opencv_contrib 的路径,精确到 /modules 目录
勾选 OPENCV_GENERATE_PKGCONFIG
勾选 OPENCV_PYTHON3_VERSION
Fedora28安装opencv-4.1.0+opencv_contrib-4.1.0

最后,点击 Generate,出现 “Generating done” 则意味着 cmake 的工作结束了。

Fedora28安装opencv-4.1.0+opencv_contrib-4.1.0

6.安装最后一步
上述时间都不长,完成后cd到build选择的那个空文件夹,使用 make 与 make install 两个命令,第一个命令大概需要一个多小时,第二个一分钟,当然都需要在root下完成。完成后即在/usr/local目录下的include文件夹与lib64文件夹看到相应的文件,可以把两个文件夹拷贝出来单独搭配程序使用。
Fedora28安装opencv-4.1.0+opencv_contrib-4.1.0
Fedora28安装opencv-4.1.0+opencv_contrib-4.1.0

7.C++ 环境配置
在还没配置前,先试一下两个测试:
测试一:显示 OpenCV 版本号
命令行输入以下命令

pkg-config --modversion opencv
完了之后你会发现
Fedora28安装opencv-4.1.0+opencv_contrib-4.1.0
测试二:运行一个简单的程序,注意放张图片进去。
输入下句命令得到 可执行文件 test

g++ test.cpp -o test pkg-config --cflags --libs opencv
Fedora28安装opencv-4.1.0+opencv_contrib-4.1.0
完了之后你会发现

Fedora28安装opencv-4.1.0+opencv_contrib-4.1.0
8.配置opencv.pc
它默认会去/usr/lib64/pkgconfig 里面找 opencv.pc 。当它在这里找不到 opencv.pc ,它就会到 PKG_CONFIG_PATH 所设置的环境变量去找,如果还没找到就会报错,比如上两个测试的报错。所以:
如果是 opencv4.pc 的就把下面提到的 opencv.pc 改为 opencv4.pc,当然你也可以重命名为 opencv.pc
方法一:移动 opencv.pc 到 /usr/lib64/pkgconfig
方法二:把 opencv.pc 放在你想放的路径,然后

    打开 bash.bashrc
    gedit /etc/bashrc
    在文件后添加
    PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/设为你的opencv.pc的路径
    export PKG_CONFIG_PATH
    更新配置
    sudo updatedb
    修改 gedit /etc/profile
    方法三:如下图所示
    Fedora28安装opencv-4.1.0+opencv_contrib-4.1.0

验证
Fedora28安装opencv-4.1.0+opencv_contrib-4.1.0
Fedora28安装opencv-4.1.0+opencv_contrib-4.1.0

————————————————
原文链接:https://blog.****.net/qq_34623621/article/details/102745214