2016-10-02 116 views
1

我試着去編譯opencv實現3.1.0使用MinGW 4.9.2,但我有後續的錯誤編譯OpenCV的3.1.0 videoio錯誤的

modules\videoio\CMakeFiles\opencv_videoio.dir\build.make:187: recipe for target 
'modules/videoio/CMakeFiles/opencv_videoio.dir/src/cap_dshow.cpp.obj' failed 
mingw32-make[2]: *** [modules/videoio/CMakeFiles/opencv_videoio.dir/src/cap_dsho 
w.cpp.obj] Error 1 
CMakeFiles\Makefile2:4340: recipe for target 'modules/videoio/CMakeFiles/opencv_ 
videoio.dir/all' failed 
mingw32-make[1]: *** [modules/videoio/CMakeFiles/opencv_videoio.dir/all] Error 2 

makefile:159: recipe for target 'all' failed 
mingw32-make: *** [all] Error 2 

我發現是cap_dshow.cpp構建過程中的OpenCV生成錯誤。解決方案顯示here沒有必要,因爲Opencv 3.1中的文件已經修復。

在CMake的階段我已經改變了這個(谷CMake的GUI 3.4.3),但不工作

CMAKE_BUILD_TYPE = Debug 
WITH_EIGEN = 0 
WITH_OPENGL = 0 
WITH_IPP = 0 
WITH_QT = 1 

我試過在this post給出的解決方案,但不工作也不

add_extra_compiler_option(-Werror=non-virtual-dtor) 

我的意圖是與C++,Opencv和QT的GUI設計師合作。我已經安裝了庫qt-5.4.0-x64-mingw492r0-sjlj,它自帶了MingW 4.9.2。 (PS /另一個我已經編譯Openvv3.1.0與Mingw 4.9.3及其作品完美)

請任何人helpme請!!!

回答

0

在文件%OPENCV_HOME%\來源\模塊\ videoio的\ src \ cap_dshow.cpp

添加在頂部:

#define STRSAFE_NO_DEPRECATE 

工作爲我的Qt 5.6.2,4.9.2的MinGW的OpenCV 3.2.0