1. 准备工作
- MinGW64:
官网:https://sourceforge.net/projects/mingw-w64/files/
下载红框中版本,选择posix版本,不要选wind32版本,下载完成后将bin目录加入环境变量path目录 - CMake
下载CMake,https://cmake.org/ - Git
- OpenCV源码
2. 编译
打开CmakeGUI,编译器手动选择一下,不要使用默认选项,C编译器选择gcc.exe,C++编译器选择g++.exe,都在MinGW64的bin目录下面,如果使用默认选项,C++编译器会默认使用c++.exe,会导致编译报错,导致 Undefined reference to _Unwind_Resume and __gxx_personality_v0 这个错误,这个错误是因为c编译器和c++编译器不兼容导致的,gcc一定要配合g++
编译过程中,编译依赖ffmpeg时,因为要下载lib文件,会因为raw.githubusercontent.com这个地址访问超时失败,可以将\sources\3rdparty\ffmpeg 内的 ffmpeg.cmake,将raw.githubusercontent.com地址改为加速地址raw.staticdn.net
然后搜索world,勾选BUILD_opencv_world,该选项可以将各种库文件打包成一个库文件,建议选上吧。
python相关的很容易解决,我们的程序不需要和python挂钩,只需要将python相关的预选开关关掉即可,如下图: