编译工具介绍
Win10 + Mingw730_64(QT5.13.1) + Opencv430 + Cmake3.17.2
1 下载opencv
opencv-4.3.0-vc14_vc15.exe
2 下载opencv_3rdparty-ffmpeg
到https://github.com/opencv/opencv_3rdparty下载和opencv匹配的ffmpeg库,本文opencv-4.3.0使用的是opencv_3rdparty-ffmpeg-20200311版本。把opencv_videoio_ffmpeg.dll、opencv_videoio_ffmpeg_64.dll和ffmpeg_version.cmake放到opencv\sources\3rdparty\ffmpeg目录下
3 cmake gui配置
选中“WITH_OPENGL”、“WITH_QT” —本次编译的库会再QT中使用,因此需要选中
取消选中 “BUILD_TESTS”、“”
多次点击Configure直到没有任何标红的行出现为止。
点击Generate。
4 开始编译
再xxx\opencv\build\mingw64目录下,powershell上依次执行
mingw32-make -j8
mingw32-make install
遇到的问题
问题1:
D:/Qt5.13.1/Tools/mingw730_64/bin/…/lib/gcc/x86_64-w64-mingw32/7.3.0/…/…/…/…/x86_64-w64-mingw32/bin/ld.exe: i386 architecture of input file `CMakeFiles\opencv_core.dir/objects.a(vs_version.rc.obj)’ is incompatible with i386:x86-64 output
collect2.exe: error: ld returned 1 exit status
mingw32-make[2]: *** [modules\core\CMakeFiles\opencv_core.dir\build.make:1481: bin/libopencv_core430.dll] Error 1
mingw32-make[1]: *** [CMakeFiles\Makefile2:1333: modules/core/CMakeFiles/opencv_core.dir/all] Error 2
mingw32-make: *** [Makefile:162: all] Error 2
*** 解决方法***:
in cmake gui add entry OPENCV_VS_VERSIONINFO_SKIP = 1.
https://answers.opencv.org/question/197714/problem-with-building-opencv-with-cmake-in-windows/
参考资料
https://blog.csdn.net/sinat_36264666/article/details/73200739