一、OpenCV 3.4.2
二、CMake 3.12.1
三、Qt 5.11.1
四、MinGW 32 使用的是Qt按照的版本
五、系統是Windows 7
下面是編譯註意事項:
一、添加 MinGW 到環境變量
爲系統變量 Path 添加MinGW路徑,俺的是 C:\Qt\Qt5.11.1\Tools\mingw530_32\bin
二、使用 CMake 生成 OpenCV 的 Makefile:
1)打開 cmake-gui,設置源碼和生成路徑(根據各自實際狀況設置):
⦁ Where is the source code: E:\OpenCV-3.4.2\sources
⦁ Where to build the binaries: E:\OpenCV-3.4.2\build
2)點擊 Configure,設置編譯器:
⦁ Specify the generator for this project: MinGW Makefiles
⦁ Specify native compilers
而後:
⦁ Compilers C: C:\Qt\Qt5.11.1\Tools\mingw530_32\bin\gcc.exe
⦁ Compilers C++: C:\Qt\Qt5.11.1\Tools\mingw530_32\bin\g++.exe
最後點:Finish
三、編譯配置:
⦁ 勾選 WITH_OPENGL
⦁ 勾選 WITH_QT
⦁ 勾選 WITH_OPENMP(用於並行計算)
⦁ 勾選 ENABLE_CXX11python
⦁ 不勾選 ENABLE_PRECOMPILED_HEADERS
⦁ 不勾選 WITH_IPP
⦁ 不勾選 WITH_TBB(OpenCV-3.4.2版本出現的問題,以前的版本須要看狀況)
⦁ 不勾選 WITH_MSMF(同上,第一天俺就在折騰這個)
由於俺不須要Java和python支持,因此這兩個俺全取消了 :)
點擊 Configure,Generate 生成 Makefile
四、在下面正式編譯前還得處理一個源程序內容
修改\modules\videoio\src\cap_dshow.cpp文件,
在#include "DShow.h"這行的上面加一行#define NO_DSHOW_STRSAFE,如:
#define NO_DSHOW_STRSAFE
#include "DShow.h"
五、編譯 OpenCV:
在build目錄空白處 shift+右鍵,在此處打開命令窗口
打開終端進行編譯:mingw32-make (沒有設置設置變量的話須要敲全目錄你懂的)
可打開多進程:mingw32-make -j4(俺的機器是4核)
六、裝載OpenCV:
上述編譯過程完成後,若是沒有錯誤,那麼恭喜你,你成功了!
那麼就進行最後一步裝載吧:mingw32-make install
該命令會將編譯後生成的頭文件及動態庫文件複製到目錄:「\install」。該目錄包括運行OpenCV程序所須要的所有資源。ide