• Windows10 环境下使用 Cmake 和 MinGWw64 编译安装 OpenCV 4.0.1


    一、系统及软件环境

    • Windows-10-64bit
    • MinGW-w64-x86_64-8.1.0-release-posix-seh-rt_v6-rev0
    • CMake-3.13.1
    • opencv-4.0.1-vc14_vc15

    二、安装 MinGW-w64 并配置其环境变量

    通过 window 安装文件来安装

    1. 下载 MinGW-w64,下载地址: MinGW-w64 - for 32 and 64 bit Windows

    2. 安装 MinGW-w64。以管理员的身份执行安装程序,根据自己环境的情况选择安装包
      在这里插入图片描述

      然后执行下一步,如果这步出现错误就通过离线的方式来配置
      在这里插入图片描述

    3. 离线配置 MinGW-w64. 如果使用 .exe 文件安装出现错误,可以通过离线的方式来配置 MinGW-w64。具体步骤参考下面内容。

    通过离线包进行安装

    1. 下载对应版本的离线包,下载地址:x86_64-8.1.0-release-posix-seh-rt_v6-rev0.7z

    2. 提取文件到任意路径,我是直接放在 C:\ 目录下;

    3. 配置环境变量,将 X:\mingw64\bin(X 为提取目录) 添加到环境变量的 path 变量中,然后打开命令行执行器输入 gcc -v, 如果出现对应的版本号则表示配置成功。
      在这里插入图片描述

    三、使用 Cmake 生成 OpenCV 的 Makefile

    1. 下载对应平台的 cmake 并安装,下载地址: cmake

    2. 下载 Opencv 安装文件,这里我下载的是 opencv-4.0.1-vc14_vc15.exe, 下载地址: opencv

    3. 运行 opencv-4.0.1-vc14_vc15.exe,将文件提取到指定目录,我这里提取到 D:\

    4. 打开 cmake-gui,设置源码路径和编译文件路径,
      在这里插入图片描述

    5. 点击 Configure,设置编译器

      • Specify the generator for this project: MinGW Makefiles
      • Specify native compilers
      • Next
      • Compilers C: C:\mingw64\bin\gcc.exe
      • Compilers C++: C:\mingw64\bin\g++.exe
      • Finish
        在这里插入图片描述
        在这里插入图片描述

      设置好后所有的配置都是红色的。(这一步中间过程会下载两个文件,分别为 opencv_ffmpeg.dllopencv_ffmpeg_64.dll,但是由于网络原因可能会下载失败,具体解决办法参见错误解决方法)

    6. 编译配置:(具体根据自己的需求进行添加和去除)

      • 勾选 WITH_OPENGL
      • 不勾选 WITH_IPP
      • 不勾选 ENABLE_PRECOMPILED_HEADERS
    7. 配置好后,再次点击 Configure,此时配置会变成白色。然后点击Generate 生成 Makefile

    四、编译 Opencv

    打开终端进行编译:(-j 是使用 8 个线程进行编译,请根据你的计算机配置合理设置线程数)

    D:
    cd opencv/mingw-build
    mingw32-make -j 8
    mingw32-make install
    

    五、可能遇到的错误及解决方法

    1. 在配置 Makefile 文件时,卡在下载 opencv_ffmpeg.dllopencv_ffmpeg_64.dll 文件

      解决方法:

      • 在下载上述文件时会在 D:\opencv\sources\.cache\ffmpeg 文件目录下生成对应的缓存文件,需要下载的文件可以在 D:\opencv\build\bin 目录下找到(文件名可能不一样,需要进行修改)。
      • D:\opencv\build\bin 的文件复制到 D:\opencv\sources\.cache\ffmpeg 目录下,并将名字改为原缓存文件夹中文件对应的名字
      • 生成 Makefile 遇到下载错误时,会生成错误日志,文件路径为 D:/opencv/mingw-build2/CMakeDownloadLog.txt,你也可以通过该日志文件中的链接下载对应的文件,总共有 3 个,另外一个是 ffmpeg_version.cmake

    更多编译遇到的问题见参考链接中的文章!

    参考内容

    1. OpenCV使用CMake和MinGW-w64的编译安装

    2. OpenCV-MinGW-Build

  • 相关阅读:
    eval()
    promise
    console.log()和console.dir()、console.table()的区别
    SSM框架搭建+easyui增删改查
    虚成员
    关键字 explicit
    复制控制
    变量、静态变量
    关键字 extern
    关键字 static
  • 原文地址:https://www.cnblogs.com/busyboxs/p/12245363.html
Copyright © 2020-2023  润新知