c-如何解决使用CMAKE 3.4.1和VS2015编译带有额外模型的opencv3.0时找不到包含文件的问题

使用CMAKE 3.4.1和VS2015构建OPENCV 3.0时. VS2015出现以下错误:

error   C2264   “std::tuple<cv::Size,perf::`anonymous-namespace'::MatDepth>::tuple”: error;opencv_perf_core E:\OpenCV3\sources\modules\core\perf\opencl\perf_channels.cpp   187 
error       Cannot open scr file "opencv2/core/hal/intrin.hpp"  opencv_xphoto   e:\OpenCV3\sources\modules\xphoto\src\grayworld_white_balance.cpp   43  
error   C1083   Cannot open include file: “opencv2/core/hal/intrin.hpp”: No such file or directory  opencv_xphoto   E:\OpenCV3\sources\modules\xphoto\src\grayworld_white_balance.cpp   43  
error   C2610   “std::tuple<cv::Size,perf::`anonymous-namespace'::MatDepth>::tuple(const std::tuple<cv::Size,perf::`anonymous-namespace'::MatDepth> &)”:  E:\OpenCV3\sources\modules\core\perf\opencl\perf_channels.cpp)    opencv_perf_core    D:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\tuple    328 
error   C2610   “std::tuple<cv::Size,perf::`anonymous-namespace'::MatDepth>::tuple(std::tuple<cv::Size,perf::`anonymous-namespace'::MatDepth> &&)”:  E:\OpenCV3\sources\modules\core\perf\opencl\perf_channels.cpp) opencv_perf_core    D:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\tuple    329 
error   C2535   “std::tuple<cv::Size,perf::`anonymous-namespace'::MatDepth> &std::tuple<cv::Size,perf::`anonymous-namespace'::MatDepth>::operator =(const std::tuple<cv::Size,perf::`anonymous-namespace'::MatDepth> &)”:  E:\OpenCV3\sources\modules\core\perf\opencl\perf_channels.cpp)   opencv_perf_core    D:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\tuple    463 
error   C2382   “std::tuple<cv::Size,perf::`anonymous-namespace'::MatDepth>::operator =”: E:\OpenCV3\sources\modules\core\perf\opencl\perf_channels.cpp)    opencv_perf_core    D:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\tuple    463 
error   C2264   “std::tuple<cv::Size,perf::`anonymous-namespace'::MatDepth>::tuple”: 函数定义或声明中有error;未调用函数   opencv_perf_core    E:\OpenCV3\sources\modules\core\perf\opencl\perf_channels.cpp   165 
error   C1083   Cannot open include file: “opencv2/core/hal/intrin.hpp”: No such file or directory  opencv_ximgproc E:\OpenCV3\sources\modules\ximgproc\src\fgs_filter.cpp  38  
error   C1083   Cannot open include file: “opencv2/core/hal/hal.hpp”: No such file or directory opencv_aruco    E:\OpenCV3\sources\modules\aruco\src\dictionary.cpp 44  
error   C1083   Cannot open include file: “opencv2/core/hal/hal.hpp”: No such file or directory opencv_ximgproc E:\OpenCV3\sources\modules\ximgproc\src\sparse_match_interpolators.cpp  41  
error   C1083   Cannot open include file: “opencv2/core/hal/hal.hpp”: No such file or directory opencv_xfeatures2d  E:\OpenCV3\sources\modules\xfeatures2d\src\sift.cpp 108 
error   C1083   Cannot open include file: “opencv2/core/hal/hal.hpp”: No such file or directory opencv_optflow  E:\OpenCV3\sources\modules\optflow\src\motempl.cpp  44  
error   LNK1104 Cannot open file“..\..\lib\Debug\opencv_aruco300d.lib”  opencv_test_aruco   E:\OpenCV3\sources\build\modules\aruco\LINK 1   
error   LNK1104 Cannot open file“..\..\lib\Debug\opencv_optflow300d.lib”    opencv_test_optflow E:\OpenCV3\sources\build\modules\optflow\LINK   1   
error   LNK1104 Cannot open file“..\..\lib\Debug\opencv_xfeatures2d300d.lib”    opencv_stitching    E:\OpenCV3\sources\build\modules\stitching\LINK 1   
error   LNK1104 Cannot open file“..\..\lib\Debug\opencv_stitching300d.lib”  opencv_perf_stitching   E:\OpenCV3\sources\build\modules\stitching\LINK 1   
error   LNK1104 Cannot open file“..\..\lib\Debug\opencv_xphoto300d.lib” opencv_perf_xphoto  E:\OpenCV3\sources\build\modules\xphoto\LINK    1   
error   LNK1104 Cannot open file“..\..\lib\Debug\opencv_ximgproc300d.lib”   opencv_perf_ximgproc    E:\OpenCV3\sources\build\modules\ximgproc\LINK  1   
error   LNK1104 Cannot open file“..\..\lib\Debug\opencv_xfeatures2d300d.lib”    opencv_perf_xfeatures2d E:\OpenCV3\sources\build\modules\xfeatures2d\LINK   1   
error   LNK1104 Cannot open file“..\..\lib\Debug\opencv_stitching300d.lib”  opencv_test_stitching   E:\OpenCV3\sources\build\modules\stitching\LINK 1   
error   C2065   “vector_Rect2d”: Undeclared identifier  opencv_python2  E:\OpenCV3\sources\build\modules\python2\pyopencv_generated_types.h 22172   
error   C2146   syntax error: missing“;”(在标识符“boundingBox”的前面)  opencv_python2  E:\OpenCV3\sources\build\modules\python2\pyopencv_generated_types.h 22172   
error   C2065   “boundingBox”: Undeclared identifier    opencv_python2  E:\OpenCV3\sources\build\modules\python2\pyopencv_generated_types.h 22172   
error   C2065   “boundingBox”: Undeclared identifier    opencv_python2  E:\OpenCV3\sources\build\modules\python2\pyopencv_generated_types.h 22179   
error   C2065   “boundingBox”: Undeclared identifier    opencv_python2  E:\OpenCV3\sources\build\modules\python2\pyopencv_generated_types.h 22181   
error   C2065   “vector_Rect2d”: Undeclared identifier  opencv_python2  E:\OpenCV3\sources\build\modules\python2\pyopencv_generated_types.h 22191   
error   C2146   syntax error: missing“;”    opencv_python2  E:\OpenCV3\sources\build\modules\python2\pyopencv_generated_types.h 22191   
error   C2065   “boundingBox”: Undeclared identifier    opencv_python2  E:\OpenCV3\sources\build\modules\python2\pyopencv_generated_types.h 22191   
error   C2065   “boundingBox”: Undeclared identifier    opencv_python2  E:\OpenCV3\sources\build\modules\python2\pyopencv_generated_types.h 22197   
error   C2065   “boundingBox”: Undeclared identifier    opencv_python2  E:\OpenCV3\sources\build\modules\python2\pyopencv_generated_types.h 22199   
error   C2065   “vector_Rect2d”: Undeclared identifier  opencv_python2  E:\OpenCV3\sources\build\modules\python2\pyopencv_generated_types.h 22216   
error   C2146   syntax error: missing“;”opencv_python2  E:\OpenCV3\sources\build\modules\python2\pyopencv_generated_types.h 22216   
error   C2065   “boundingBox”: Undeclared identifier    opencv_python2  E:\OpenCV3\sources\build\modules\python2\pyopencv_generated_types.h 22216   
error   C2065   “boundingBox”: Undeclared identifier    opencv_python2  E:\OpenCV3\sources\build\modules\python2\pyopencv_generated_types.h 22223   
error   C2065   “boundingBox”: Undeclared identifier    opencv_python2  E:\OpenCV3\sources\build\modules\python2\pyopencv_generated_types.h 22224   
error   C2065   “vector_Rect2d”: Undeclared identifier  opencv_python2  E:\OpenCV3\sources\build\modules\python2\pyopencv_generated_funcs.h 7839    
error   C2146   syntax error: missing“;”    opencv_python2  E:\OpenCV3\sources\build\modules\python2\pyopencv_generated_funcs.h 7839    
error   C2065   “boundingBox”: Undeclared identifier    opencv_python2  E:\OpenCV3\sources\build\modules\python2\pyopencv_generated_funcs.h 7839    
error   C2065   “boundingBox”: Undeclared identifier    opencv_python2  E:\OpenCV3\sources\build\modules\python2\pyopencv_generated_funcs.h 7846    
error   C2065   “boundingBox”: Undeclared identifier    opencv_python2  E:\OpenCV3\sources\build\modules\python2\pyopencv_generated_funcs.h 7848    
error   LNK1104 Cannot open file“..\..\lib\Debug\opencv_xfeatures2d300d.lib”    opencv_test_xfeatures2d E:\OpenCV3\sources\build\modules\xfeatures2d\LINK   1   
error   LNK1104 Cannot open file“..\..\lib\Debug\opencv_ximgproc300d.lib”   opencv_test_ximgproc    E:\OpenCV3\sources\build\modules\ximgproc\LINK  1   
error   LNK1104 Cannot open file“..\..\lib\Debug\opencv_xphoto300d.lib” opencv_test_xphoto  E:\OpenCV3\sources\build\modules\xphoto\LINK    1   

我认为问题可能出在“ opencv2 / core / hal / intrin.hpp”和“ opencv2 / core / hal / hal.hpp”.但是,在指定包含文件之后.代码中出现了更多的问题,例如没有cv :: hal等,所以我完全迷失了错误.

我使用以下教程来配置和编译我的Cmake和VS:https://putuyuwono.wordpress.com/2015/04/23/building-and-installing-opencv-3-0-on-windows-7-64-bit/

我需要使用Xfeatures2d,该怎么做呢?非常感谢,圣诞节快乐〜

最佳答案
尝试使用OpenCV 3.1源进行构建.

由于您正在构建Xfeatures2d,因此似乎已经将opencv_contrib模块添加到了源代码树中.过去一周我做了同样的事情,下载的opencv_contrib版本只能使用现在可用的OpenCV 3.1来构建.使用OpenCV 3.0,我收到的错误消息完全相同(无法打开scr文件“ opencv2 / core / hal / intrin.hpp”).似乎hal已移至OpenCV 3.1的核心.

试试看.现在,所有模块都已使用Visual Studio 2012在Windows 7下为我成功构建.注意:必须在CMake中设置“ opencv_extra_modules_path”,并且我假设您还希望设置“ with_cuda”(并且您可能已经检查过).我正在使用CMake 2.8.12.2.

转载注明原文:c-如何解决使用CMAKE 3.4.1和VS2015编译带有额外模型的opencv3.0时找不到包含文件的问题 - 代码日志