系统信息:在INtel celeron双核上的WIndows 7,64位 我正在从master分支构建OpenCV库。按照opencv doc中的所有说明操作后,我获得了构建目录。但我发现我的OCL目录丢失了。我在这里: C:\ Users \用户碎甲弹\文件\ opencv_built \模块
为什么会这样?
这是cmake generate的输出:
The CXX compiler identification is MSVC 16.0.30319.1
The C compiler identification is MSVC 16.0.30319.1
Check for working CXX compiler using: Visual Studio 10 2010 Win64
ICV: Unpacking ippicv_windows_20140429.zip to C:/Users/Hesh/Documents/opencv_source/opencv/3rdparty/ippicv/unpack...
ICV: Package successfully downloaded
found IPP (ICV version): 8.1.1 [8.1.1]
at: C:/Users/Hesh/Documents/opencv_source/opencv/3rdparty/ippicv/unpack/ippicv_win
Could NOT find PythonInterp (missing: PYTHON_EXECUTABLE) (Required is at least version "2.7")
Could NOT find PythonInterp (missing: PYTHON_EXECUTABLE) (Required is at least version "2.6")
Could NOT find JNI (missing: JAVA_AWT_LIBRARY JAVA_JVM_LIBRARY JAVA_INCLUDE_PATH JAVA_INCLUDE_PATH2 JAVA_AWT_INCLUDE_PATH)
Could NOT find Matlab (missing: MATLAB_MEX_SCRIPT MATLAB_INCLUDE_DIRS MATLAB_ROOT_DIR MATLAB_LIBRARIES MATLAB_LIBRARY_DIRS MATLAB_MEXEXT MATLAB_ARCH MATLAB_BIN)
VTK is not found. Please set -DVTK_DIR in CMake to VTK build directory, or to VTK install subdirectory with VTKConfig.cmake file
CMake Warning (dev) at cmake/OpenCVModule.cmake:795 (get_target_property):
Policy CMP0026 is not set: Disallow use of the LOCATION target property.
Run "cmake --help-policy CMP0026" for policy details. Use the cmake_policy
command to set the policy and suppress this warning.
The LOCATION property should not be read from target "opencv_test_core".
Use the target name directly with add_custom_command, or use the generator
expression $<TARGET_FILE>, as appropriate.
Call Stack (most recent call first):
modules/core/CMakeLists.txt:28 (ocv_add_accuracy_tests)
This warning is for project developers. Use -Wno-dev to suppress it.
CMake Warning (dev) at cmake/OpenCVModule.cmake:795 (get_target_property):
Policy CMP0026 is not set: Disallow use of the LOCATION target property.
Run "cmake --help-policy CMP0026" for policy details. Use the cmake_policy
command to set the policy and suppress this warning.
The LOCATION property should not be read from target "opencv_test_flann".
Use the target name directly with add_custom_command, or use the generator
expression $<TARGET_FILE>, as appropriate.
Call Stack (most recent call first):
cmake/OpenCVModule.cmake:655 (ocv_add_accuracy_tests)
modules/flann/CMakeLists.txt:2 (ocv_define_module)
This warning is for project developers. Use -Wno-dev to suppress it.
CMake Warning (dev) at cmake/OpenCVModule.cmake:795 (get_target_property):
Policy CMP0026 is not set: Disallow use of the LOCATION target property.
Run "cmake --help-policy CMP0026" for policy details. Use the cmake_policy
command to set the policy and suppress this warning.
The LOCATION property should not be read from target "opencv_test_imgproc".
Use the target name directly with add_custom_command, or use the generator
expression $<TARGET_FILE>, as appropriate.
Call Stack (most recent call first):
cmake/OpenCVModule.cmake:655 (ocv_add_accuracy_tests)
modules/imgproc/CMakeLists.txt:2 (ocv_define_module)
This warning is for project developers. Use -Wno-dev to suppress it.
CMake Warning (dev) at cmake/OpenCVModule.cmake:795 (get_target_property):
Policy CMP0026 is not set: Disallow use of the LOCATION target property.
Run "cmake --help-policy CMP0026" for policy details. Use the cmake_policy
command to set the policy and suppress this warning.
The LOCATION property should not be read from target
"opencv_test_imgcodecs". Use the target name directly with
add_custom_command, or use the generator expression $<TARGET_FILE>, as
appropriate.
Call Stack (most recent call first):
modules/imgcodecs/CMakeLists.txt:130 (ocv_add_accuracy_tests)
This warning is for project developers. Use -Wno-dev to suppress it.
CMake Warning (dev) at cmake/OpenCVModule.cmake:795 (get_target_property):
Policy CMP0026 is not set: Disallow use of the LOCATION target property.
Run "cmake --help-policy CMP0026" for policy details. Use the cmake_policy
command to set the policy and suppress this warning.
The LOCATION property should not be read from target "opencv_test_highgui".
Use the target name directly with add_custom_command, or use the generator
expression $<TARGET_FILE>, as appropriate.
Call Stack (most recent call first):
modules/highgui/CMakeLists.txt:125 (ocv_add_accuracy_tests)
This warning is for project developers. Use -Wno-dev to suppress it.
CMake Warning (dev) at cmake/OpenCVModule.cmake:795 (get_target_property):
Policy CMP0026 is not set: Disallow use of the LOCATION target property.
Run "cmake --help-policy CMP0026" for policy details. Use the cmake_policy
command to set the policy and suppress this warning.
The LOCATION property should not be read from target
"opencv_test_features2d". Use the target name directly with
add_custom_command, or use the generator expression $<TARGET_FILE>, as
appropriate.
Call Stack (most recent call first):
cmake/OpenCVModule.cmake:655 (ocv_add_accuracy_tests)
modules/features2d/CMakeLists.txt:2 (ocv_define_module)
This warning is for project developers. Use -Wno-dev to suppress it.
CMake Warning (dev) at cmake/OpenCVModule.cmake:795 (get_target_property):
Policy CMP0026 is not set: Disallow use of the LOCATION target property.
Run "cmake --help-policy CMP0026" for policy details. Use the cmake_policy
command to set the policy and suppress this warning.
The LOCATION property should not be read from target "opencv_test_calib3d".
Use the target name directly with add_custom_command, or use the generator
expression $<TARGET_FILE>, as appropriate.
cmake / OpenCVModule.cmake:655(ocv_add_accuracy_tests) modules / video / CMakeLists.txt:2(ocv_define_module) 此警告适用于项目开发人员。使用-Wno-dev来抑制它。
CMake Warning (dev) at cmake/OpenCVModule.cmake:795 (get_target_property):
Policy CMP0026 is not set: Disallow use of the LOCATION target property.
Run "cmake --help-policy CMP0026" for policy details. Use the cmake_policy
command to set the policy and suppress this warning.
The LOCATION property should not be read from target "opencv_test_shape".
Use the target name directly with add_custom_command, or use the generator
expression $<TARGET_FILE>, as appropriate.
Call Stack (most recent call first):
cmake/OpenCVModule.cmake:655 (ocv_add_accuracy_tests)
modules/shape/CMakeLists.txt:2 (ocv_define_module)
This warning is for project developers. Use -Wno-dev to suppress it.
CMake Warning (dev) at cmake/OpenCVModule.cmake:795 (get_target_property):
Policy CMP0026 is not set: Disallow use of the LOCATION target property.
Run "cmake --help-policy CMP0026" for policy details. Use the cmake_policy
command to set the policy and suppress this warning.
The LOCATION property should not be read from target
"opencv_test_stitching". Use the target name directly with
add_custom_command, or use the generator expression $<TARGET_FILE>, as
appropriate.
Call Stack (most recent call first):
cmake/OpenCVModule.cmake:655 (ocv_add_accuracy_tests)
modules/stitching/CMakeLists.txt:2 (ocv_define_module)
This warning is for project developers. Use -Wno-dev to suppress it.
CMake Warning (dev) at cmake/OpenCVModule.cmake:795 (get_target_property):
Policy CMP0026 is not set: Disallow use of the LOCATION target property.
Run "cmake --help-policy CMP0026" for policy details. Use the cmake_policy
command to set the policy and suppress this warning.
The LOCATION property should not be read from target "opencv_test_videoio".
Use the target name directly with add_custom_command, or use the generator
expression $<TARGET_FILE>, as appropriate.
Call Stack (most recent call first):
modules/videoio/CMakeLists.txt:233 (ocv_add_accuracy_tests)
This warning is for project developers. Use -Wno-dev to suppress it.
CMake Warning (dev) at cmake/OpenCVModule.cmake:795 (get_target_property):
Policy CMP0026 is not set: Disallow use of the LOCATION target property.
Run "cmake --help-policy CMP0026" for policy details. Use the cmake_policy
command to set the policy and suppress this warning.
The LOCATION property should not be read from target
"opencv_test_superres". Use the target name directly with
add_custom_command, or use the generator expression $<TARGET_FILE>, as
appropriate.
Call Stack (most recent call first):
cmake/OpenCVModule.cmake:655 (ocv_add_accuracy_tests)
modules/superres/CMakeLists.txt:7 (ocv_define_module)
This warning is for project developers. Use -Wno-dev to suppress it.
CMake Warning (dev) at cmake/OpenCVGenPkgconfig.cmake:40 (get_target_property):
Policy CMP0026 is not set: Disallow use of the LOCATION target property.
Run "cmake --help-policy CMP0026" for policy details. Use the cmake_policy
command to set the policy and suppress this warning.
The LOCATION property should not be read from target "opencv_calib3d". Use
the target name directly with add_custom_command, or use the generator
expression $<TARGET_FILE>, as appropriate.
Call Stack (most recent call first):
CMakeLists.txt:560 (include)
This warning is for project developers. Use -Wno-dev to suppress it.
CMake Warning (dev) at cmake/OpenCVGenPkgconfig.cmake:40 (get_target_property):
Policy CMP0026 is not set: Disallow use of the LOCATION target property.
Run "cmake --help-policy CMP0026" for policy details. Use the cmake_policy
command to set the policy and suppress this warning.
The LOCATION property should not be read from target "opencv_core". Use
the target name directly with add_custom_command, or use the generator
expression $<TARGET_FILE>, as appropriate.
Call Stack (most recent call first):
CMakeLists.txt:560 (include)
This warning is for project developers. Use -Wno-dev to suppress it.
CMake Warning (dev) at cmake/OpenCVGenPkgconfig.cmake:40 (get_target_property):
Policy CMP0026 is not set: Disallow use of the LOCATION target property.
Run "cmake --help-policy CMP0026" for policy details. Use the cmake_policy
command to set the policy and suppress this warning.
The LOCATION property should not be read from target "opencv_features2d".
Use the target name directly with add_custom_command, or use the generator
expression $<TARGET_FILE>, as appropriate.
Call Stack (most recent call first):
CMakeLists.txt:560 (include)
This warning is for project developers. Use -Wno-dev to suppress it.
CMake Warning (dev) at cmake/OpenCVGenPkgconfig.cmake:40 (get_target_property):
Policy CMP0026 is not set: Disallow use of the LOCATION target property.
Run "cmake --help-policy CMP0026" for policy details. Use the cmake_policy
command to set the policy and suppress this warning.
The LOCATION property should not be read from target "opencv_flann". Use
the target name directly with add_custom_command, or use the generator
expression $<TARGET_FILE>, as appropriate.
Call Stack (most recent call first):
CMakeLists.txt:560 (include)
This warning is for project developers. Use -Wno-dev to suppress it.
CMake Warning (dev) at cmake/OpenCVGenPkgconfig.cmake:40 (get_target_property):
Policy CMP0026 is not set: Disallow use of the LOCATION target property.
Run "cmake --help-policy CMP0026" for policy details. Use the cmake_policy
command to set the policy and suppress this warning.
The LOCATION property should not be read from target "opencv_highgui". Use
the target name directly with add_custom_command, or use the generator
expression $<TARGET_FILE>, as appropriate.
Call Stack (most recent call first):
CMakeLists.txt:560 (include)
This warning is for project developers. Use -Wno-dev to suppress it.
CMake Warning (dev) at cmake/OpenCVGenPkgconfig.cmake:40 (get_target_property):
Policy CMP0026 is not set: Disallow use of the LOCATION target property.
Run "cmake --help-policy CMP0026" for policy details. Use the cmake_policy
command to set the policy and suppress this warning.
The LOCATION property should not be read from target "opencv_imgcodecs".
Use the target name directly with add_custom_command, or use the generator
expression $<TARGET_FILE>, as appropriate.
Call Stack (most recent call first):
CMakeLists.txt:560 (include)
This warning is for project developers. Use -Wno-dev to suppress it.
CMake Warning (dev) at cmake/OpenCVGenPkgconfig.cmake:40 (get_target_property):
Policy CMP0026 is not set: Disallow use of the LOCATION target property.
Run "cmake --help-policy CMP0026" for policy details. Use the cmake_policy
command to set the policy and suppress this warning.
The LOCATION property should not be read from target "opencv_imgproc". Use
the target name directly with add_custom_command, or use the generator
expression $<TARGET_FILE>, as appropriate.
Call Stack (most recent call first):
CMakeLists.txt:560 (include)
This warning is for project developers. Use -Wno-dev to suppress it.
CMake Warning (dev) at cmake/OpenCVGenPkgconfig.cmake:40 (get_target_property):
Policy CMP0026 is not set: Disallow use of the LOCATION target property.
Run "cmake --help-policy CMP0026" for policy details. Use the cmake_policy
command to set the policy and suppress this warning.
The LOCATION property should not be read from target "opencv_ml". Use the
target name directly with add_custom_command, or use the generator
expression $<TARGET_FILE>, as appropriate.
Call Stack (most recent call first):
CMakeLists.txt:560 (include)
This warning is for project developers. Use -Wno-dev to suppress it.
CMake Warning (dev) at cmake/OpenCVGenPkgconfig.cmake:40 (get_target_property):
Policy CMP0026 is not set: Disallow use of the LOCATION target property.
Run "cmake --help-policy CMP0026" for policy details. Use the cmake_policy
command to set the policy and suppress this warning.
The LOCATION property should not be read from target "opencv_nonfree". Use
the target name directly with add_custom_command, or use the generator
expression $<TARGET_FILE>, as appropriate.
Call Stack (most recent call first):
CMakeLists.txt:560 (include)
This warning is for project developers. Use -Wno-dev to suppress it.
CMake Warning (dev) at cmake/OpenCVGenPkgconfig.cmake:40 (get_target_property):
Policy CMP0026 is not set: Disallow use of the LOCATION target property.
Run "cmake --help-policy CMP0026" for policy details. Use the cmake_policy
command to set the policy and suppress this warning.
The LOCATION property should not be read from target "opencv_objdetect".
Use the target name directly with add_custom_command, or use the generator
expression $<TARGET_FILE>, as appropriate.
Call Stack (most recent call first):
CMakeLists.txt:560 (include)
This warning is for project developers. Use -Wno-dev to suppress it.
CMake Warning (dev) at cmake/OpenCVGenPkgconfig.cmake:40 (get_target_property):
Policy CMP0026 is not set: Disallow use of the LOCATION target property.
Run "cmake --help-policy CMP0026" for policy details. Use the cmake_policy
command to set the policy and suppress this warning.
The LOCATION property should not be read from target "opencv_optim". Use
the target name directly with add_custom_command, or use the generator
expression $<TARGET_FILE>, as appropriate.
Call Stack (most recent call first):
CMakeLists.txt:560 (include)
This warning is for project developers. Use -Wno-dev to suppress it.
CMake Warning (dev) at cmake/OpenCVGenPkgconfig.cmake:40 (get_target_property):
Policy CMP0026 is not set: Disallow use of the LOCATION target property.
Run "cmake --help-policy CMP0026" for policy details. Use the cmake_policy
command to set the policy and suppress this warning.
The LOCATION property should not be read from target "opencv_photo". Use
the target name directly with add_custom_command, or use the generator
expression $<TARGET_FILE>, as appropriate.
Call Stack (most recent call first):
CMakeLists.txt:560 (include)
This warning is for project developers. Use -Wno-dev to suppress it.
CMake Warning (dev) at cmake/OpenCVGenPkgconfig.cmake:40 (get_target_property):
Policy CMP0026 is not set: Disallow use of the LOCATION target property.
Run "cmake --help-policy CMP0026" for policy details. Use the cmake_policy
command to set the policy and suppress this warning.
The LOCATION property should not be read from target "opencv_shape". Use
the target name directly with add_custom_command, or use the generator
expression $<TARGET_FILE>, as appropriate.
Call Stack (most recent call first):
CMakeLists.txt:560 (include)
This warning is for project developers. Use -Wno-dev to suppress it.
CMake Warning (dev) at cmake/OpenCVGenPkgconfig.cmake:40 (get_target_property):
Policy CMP0026 is not set: Disallow use of the LOCATION target property.
Run "cmake --help-policy CMP0026" for policy details. Use the cmake_policy
command to set the policy and suppress this warning.
The LOCATION property should not be read from target "opencv_stitching".
Use the target name directly with add_custom_command, or use the generator
expression $<TARGET_FILE>, as appropriate.
Call Stack (most recent call first):
CMakeLists.txt:560 (include)
This warning is for project developers. Use -Wno-dev to suppress it.
CMake Warning (dev) at cmake/OpenCVGenPkgconfig.cmake:40 (get_target_property):
Policy CMP0026 is not set: Disallow use of the LOCATION target property.
Run "cmake --help-policy CMP0026" for policy details. Use the cmake_policy
command to set the policy and suppress this warning.
The LOCATION property should not be read from target "opencv_superres".
Use the target name directly with add_custom_command, or use the generator
expression $<TARGET_FILE>, as appropriate.
Call Stack (most recent call first):
CMakeLists.txt:560 (include)
This warning is for project developers. Use -Wno-dev to suppress it.
CMake Warning (dev) at cmake/OpenCVGenPkgconfig.cmake:40 (get_target_property):
Policy CMP0026 is not set: Disallow use of the LOCATION target property.
Run "cmake --help-policy CMP0026" for policy details. Use the cmake_policy
command to set the policy and suppress this warning.
The LOCATION property should not be read from target "opencv_ts". Use the
target name directly with add_custom_command, or use the generator
expression $<TARGET_FILE>, as appropriate.
Call Stack (most recent call first):
CMakeLists.txt:560 (include)
This warning is for project developers. Use -Wno-dev to suppress it.
CMake Warning (dev) at cmake/OpenCVGenPkgconfig.cmake:40 (get_target_property):
Policy CMP0026 is not set: Disallow use of the LOCATION target property.
Run "cmake --help-policy CMP0026" for policy details. Use the cmake_policy
command to set the policy and suppress this warning.
The LOCATION property should not be read from target "opencv_video". Use
the target name directly with add_custom_command, or use the generator
expression $<TARGET_FILE>, as appropriate.
Call Stack (most recent call first):
CMakeLists.txt:560 (include)
This warning is for project developers. Use -Wno-dev to suppress it.
CMake Warning (dev) at cmake/OpenCVGenPkgconfig.cmake:40 (get_target_property):
Policy CMP0026 is not set: Disallow use of the LOCATION target property.
Run "cmake --help-policy CMP0026" for policy details. Use the cmake_policy
command to set the policy and suppress this warning.
The LOCATION property should not be read from target "opencv_videoio". Use
the target name directly with add_custom_command, or use the generator
expression $<TARGET_FILE>, as appropriate.
Call Stack (most recent call first):
CMakeLists.txt:560 (include)
This warning is for project developers. Use -Wno-dev to suppress it.
CMake Warning (dev) at cmake/OpenCVGenPkgconfig.cmake:40 (get_target_property):
Policy CMP0026 is not set: Disallow use of the LOCATION target property.
Run "cmake --help-policy CMP0026" for policy details. Use the cmake_policy
command to set the policy and suppress this warning.
The LOCATION property should not be read from target "opencv_videostab".
Use the target name directly with add_custom_command, or use the generator
expression $<TARGET_FILE>, as appropriate.
Call Stack (most recent call first):
CMakeLists.txt:560 (include)
This warning is for project developers. Use -Wno-dev to suppress it.
General configuration for OpenCV 3.0.0-dev =====================================
Version control: 2.4.9-4336-g9e3124a
Platform:
Host: Windows 6.1 AMD64
CMake: 3.0.0
CMake generator: Visual Studio 10 2010 Win64
CMake build tool: C:/Windows/Microsoft.NET/Framework/v4.0.30319/MSBuild.exe
MSVC: 1600
C/C++:
Built as dynamic libs?: YES
C++ Compiler: c:/Program Files (x86)/Microsoft Visual Studio 10.0/VC/bin/x86_amd64/cl.exe (ver 16.0.30319.1)
C++ flags (Release): /DWIN32 /D_WINDOWS /W4 /GR /EHa /D _CRT_SECURE_NO_DEPRECATE /D _CRT_NONSTDC_NO_DEPRECATE /D _SCL_SECURE_NO_WARNINGS /Gy /bigobj /Oi /wd4251 /MD /O2 /Ob2 /D NDEBUG /Zi
C++ flags (Debug): /DWIN32 /D_WINDOWS /W4 /GR /EHa /D _CRT_SECURE_NO_DEPRECATE /D _CRT_NONSTDC_NO_DEPRECATE /D _SCL_SECURE_NO_WARNINGS /Gy /bigobj /Oi /wd4251 /D_DEBUG /MDd /Zi /Ob0 /Od /RTC1
C Compiler: c:/Program Files (x86)/Microsoft Visual Studio 10.0/VC/bin/x86_amd64/cl.exe
C flags (Release): /DWIN32 /D_WINDOWS /W3 /D _CRT_SECURE_NO_DEPRECATE /D _CRT_NONSTDC_NO_DEPRECATE /D _SCL_SECURE_NO_WARNINGS /Gy /bigobj /Oi /MD /O2 /Ob2 /D NDEBUG /Zi
C flags (Debug): /DWIN32 /D_WINDOWS /W3 /D _CRT_SECURE_NO_DEPRECATE /D _CRT_NONSTDC_NO_DEPRECATE /D _SCL_SECURE_NO_WARNINGS /Gy /bigobj /Oi /D_DEBUG /MDd /Zi /Ob0 /Od /RTC1
Linker flags (Release): /machine:x64 /INCREMENTAL:NO /debug
Linker flags (Debug): /machine:x64 /debug /INCREMENTAL
Precompiled headers: YES
OpenCV modules:
To be built: core flann imgproc imgcodecs highgui features2d calib3d ml nonfree objdetect optim photo video shape stitching videoio superres ts videostab
Disabled: world
Disabled by dependency: -
Unavailable: androidcamera cuda cudaarithm cudabgsegm cudacodec cudafeatures2d cudafilters cudaimgproc cudalegacy cudaoptflow cudastereo cudawarping cudev java matlab python viz
Windows RT support: NO
Use GCD NO
Use Concurrency YES
Use C=: NO
Use Cuda: NO
Use OpenCL: YES
OpenCL:
Version: dynamic
Include path: C:/Users/Hesh/Documents/opencv_source/opencv/3rdparty/include/opencl/1.2
Use AMDFFT: NO
Use AMDBLAS: NO
Python:
Interpreter: NO
Java:
ant: NO
JNI: NO
Java tests: NO
Matlab:
mex: NO
Tests and samples:
Tests: YES
Performance tests: YES
C/C++ Examples: NO
Install path: C:/Users/Hesh/Documents/opencv_built/install
cvconfig.h is in: C:/Users/Hesh/Documents/opencv_built
-----------------------------------------------------------------
Configuring done
你可以看到,它说使用OpenCL = YES,那么为什么模块OCL没有来?
修改
我发现实际上在模块下的主分支中,OCL丢失了:
见这里:
https://github.com/Itseez/opencv/tree/master/modules
但它存在于2.4.9.x
中https://github.com/Itseez/opencv/tree/2.4.9.x-prep/modules
为什么这样?
我想为3.0.0构建库,我认为只能从master分支构建,但是现在因为它缺少OCL模块,我该怎么办?我在最新3.0.0中需要OCL
答案 0 :(得分:3)
OpenCV的主分支已切换到“透明API”设计。此API将CPU和OpenCL实现放在统一的API下。因此不再需要单独的“ocl”模块。以下是介绍更改的演示文稿:presentation。