How to build opencv_world and opencv_contrib_world with VTK

asked 2015-06-09 04:13:18 -0600

neodreamer gravatar image

I built opencv 3.0 with VTK(static) successfully already.
And then try to build opencv_world and opencv_contrib_world with VTK but it was fail. Configuration has many warning.

I checked and uncheck several option .
BUILD_SHARED_LIBS: uncheck(same error when i check this option)
BUILD_opencv_world: check
BUILD_opencv_contrib_world: check
WITH_OPENGL: check
WITH_OPENMP: check


found IPP (ICV version): 8.2.1 [8.2.1]
at: E:/DevWork/OpenCV/opencv_v3.0/sources/3rdparty/ippicv/unpack/ippicv_win
Could NOT find Doxygen (missing:  DOXYGEN_EXECUTABLE) 
To enable PlantUML support, set PLANTUML_JAR environment variable or pass -DPLANTUML_JAR=<filepath> option to cmake
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 PythonInterp (missing:  PYTHON_EXECUTABLE) (Required is at least version "3.4")
Could NOT find PythonInterp (missing:  PYTHON_EXECUTABLE) (Required is at least version "3.2")
ERROR: 
The system was unable to find the specified registry key or value.

ERROR: 
The system was unable to find the specified registry key or value.

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) 
Found VTK ver. 6.2.0 (usefile: E:/DevWork/VTK/VTK-6.2.0/CMake/UseVTK.cmake)
Tesseract:   NO
Processing WORLD modules...
    module opencv_hal...
    module opencv_core...
    module opencv_flann...
    module opencv_imgproc...
    module opencv_ml...
    module opencv_photo...
    module opencv_video...
    module opencv_viz...
    module opencv_imgcodecs...
    module opencv_shape...
    module opencv_videoio...
  videoio: Removing WinRT API headers by default
    module opencv_highgui...
    module opencv_objdetect...
    module opencv_superres...
    module opencv_features2d...
    module opencv_calib3d...
    module opencv_videostab...
    module opencv_stitching...
Processing WORLD modules... DONE
Processing module opencv_reg...
Processing module opencv_surface_matching...
Processing module opencv_face...
Processing module opencv_optflow...
Processing module opencv_tracking...
Processing module opencv_ts...
Processing module opencv_ximgproc...
Processing module opencv_xobjdetect...
Processing module opencv_xphoto...
Processing module opencv_adas...
Processing module opencv_bgsegm...
Processing module opencv_bioinspired...
Processing module opencv_latentsvm...
Processing module opencv_line_descriptor...
Processing module opencv_saliency...
Processing module opencv_text...
Tesseract:   NO
Processing module opencv_ccalib...
Processing module opencv_datasets...
Processing module opencv_rgbd...
Processing module opencv_xfeatures2d...
Processing module opencv_contrib_world...
Complex module opencv_contrib_world
    + opencv_bgsegm
    + opencv_bioinspired
    + opencv_ccalib
    - opencv_cvv
    + opencv_datasets
    + opencv_face
    + opencv_latentsvm
    + opencv_line_descriptor
    + opencv_optflow
    + opencv_reg
    + opencv_rgbd
    + opencv_saliency
    + opencv_surface_matching
    + opencv_text
    + opencv_tracking
    + opencv_xfeatures2d
    + opencv_ximgproc
    + opencv_xobjdetect
    + opencv_xphoto
CMake Warning (dev) at cmake/OpenCVUtils.cmake:798 (get_target_property):
  Policy CMP0045 is not set: Error on non-existent target in
  get_target_property.  Run "cmake --help-policy CMP0045" for policy details.
  Use the cmake_policy command to set the policy and suppress this warning.

  get_target_property() called with non-existent target "opencv_calib3d".
Call Stack (most recent call first):
  cmake/OpenCVGenPkgconfig.cmake:38 (ocv_get_all_libs)
  CMakeLists.txt:648 (include)
This warning is for project developers.  Use -Wno-dev to suppress it.

CMake Warning (dev) at cmake/OpenCVUtils.cmake:798 (get_target_property):
  Policy CMP0045 is not set: Error on non-existent target in
  get_target_property.  Run "cmake --help-policy CMP0045" for policy details.
  Use the cmake_policy command to set the policy and suppress this warning.

  get_target_property() called with non-existent target "opencv_core".
Call Stack (most recent call first):
  cmake/OpenCVGenPkgconfig.cmake:38 (ocv_get_all_libs)
  CMakeLists.txt:648 (include)
This warning is for project developers.  Use -Wno-dev to suppress it.

CMake Warning (dev) at cmake/OpenCVUtils.cmake:798 (get_target_property):
  Policy CMP0045 is not set: Error on non-existent target in ...
(more)
edit retag flag offensive close merge delete

Comments

2

The world module is actually a wrapper module that builds the complete openCV module interface, so basically all modules available. There is no matlab system configured on your system so the build of matlab contrib module is not working and thus opencv_world fails to build. Just disable that module and build all modules that you need explicitly.

StevenPuttemans gravatar imageStevenPuttemans ( 2015-06-09 04:19:33 -0600 )edit

Thanks for you reply. But I did not set any option for MATLAB. I can found option for matlab that is MATLAB_ROOT_DIR. It is MATLAB_ROOT_DIR_-NOTFOUND (default))

neodreamer gravatar imageneodreamer ( 2015-06-09 21:17:24 -0600 )edit

You do not need to set, world requires implicitly these settings. Why you are building world module? Any specific reason?

StevenPuttemans gravatar imageStevenPuttemans ( 2015-06-10 04:11:49 -0600 )edit

It's for convenient for redistribution. Can you give more detail explanation about build the world module?

neodreamer gravatar imageneodreamer ( 2015-06-10 20:14:41 -0600 )edit

I haven't been able to build it successfully myself. I compile OpenCV against latest branch each time I need it :P

StevenPuttemans gravatar imageStevenPuttemans ( 2015-06-11 02:21:49 -0600 )edit