Compile Fails with TBB and OpenNI-Bin-Dev-Linux-x64-v1.5.2.23 on cap_openni.cpp (Bug #1782)


Added by Joel Mckay almost 13 years ago. Updated almost 13 years ago.


Status:Done Start date:2012-04-09
Priority:Normal Due date:
Assignee:Andrey Kamaev % Done:

0%

Category:build/install
Target version:2.4.0 Estimated time:1.00 hour
Affected version: Operating System:
Difficulty: HW Platform:
Pull request:

Description

OS: Ubuntu 10.04 LTS

#Compile Fails with TBB and OpenNI-Bin-Dev-Linux-x64-v1.5.2.23 on cap_openni.cpp

-- Detected version of GNU GCC: 44 (404)
-- Extracting svn version, please wait...
-- SVNVERSION:  svn:7923
-- Found OpenEXR: /usr/lib64/libIlmImf.so
--     Use NumPy headers from: /usr/lib/python2.6/dist-packages/numpy/core/include
--     Found Sphinx 1.0.1: /usr/bin/sphinx-build
-- CUDA detected: 4.1
-- CUDA NVCC target flags: -gencode;arch=compute_11,code=sm_11;-gencode;arch=compute_13,code=sm_13;-gencode;arch=compute_13,code=sm_20;-gencode;arch=compute_13,code=sm_21;-gencode;arch=compute_13,code=compute_13
-- 
-- General configuration for OpenCV 2.4.0 =====================================
-- 
--   Platform:
--     Host:                       Linux 2.6.32-34-generic x86_64
--     Target:                     Linux 2.6.32-34-generic x86_64
--     CMake:                      2.8.1
--     CMake generator:            Unix Makefiles
--     CMake build tool:           /usr/bin/make
-- 
--   C++:
--     Built as dynamic libs?:     YES
--     C++ Compiler:               /usr/bin/c++
--     C++ flags (Release):          -Wall -Wno-long-long -pthread -ffunction-sections -O3 -DNDEBUG   -fomit-frame-pointer -msse -msse2 -DNDEBUG
--     C++ flags (Debug):            -Wall -Wno-long-long -pthread -ffunction-sections -g  -O0 -DDEBUG -D_DEBUG -ggdb3
--     Linker flags (Release):
--     Linker flags (Debug):
-- 
--   OpenCV modules:
--     To be built:                calib3d contrib core features2d flann gpu highgui imgproc legacy ml nonfree objdetect photo python stitching ts video videostab
--     Disabled by user:           -
--     Disabled by dependency:     -
--     Unavailable:                androidcamera java
-- 
--   GUI: 
--     GTK+ 2.x:                   YES
--     GThread :                   YES
--     GtkGlExt:                   YES
--     OpenGL support:             YES
-- 
--   Media I/O: 
--     ZLib:                       /usr/lib64/libz.so
--     JPEG:                       /usr/lib64/libjpeg.so
--     PNG:                        /usr/lib64/libpng.so
--     TIFF:                       /usr/lib64/libtiff.so
--     JPEG 2000:                  /usr/lib64/libjasper.so
--     OpenEXR:                    YES
--     OpenNI:                     YES
--     OpenNI PrimeSensor Modules: YES
-- 
--   Video I/O:
--     DC1394 1.x:                 NO
--     DC1394 2.x:                 YES
--     FFMPEG:                     YES
--       codec:                    YES
--       format:                   YES
--       util:                     YES
--       swscale:                  YES
--       gentoo-style:             YES
--     GStreamer:                  YES
--     UniCap:                     YES
--     PvAPI:                      NO
--     V4L/V4L2:                   Using libv4l
--     Xine:                       YES
-- 
--   Other third-party libraries:
--     Use IPP:                    NO
--     Use TBB:                    YES
--     Use Cuda:                   YES
--     Use Eigen:                  YES
-- 
--   Python interpreter:           /usr/bin/python2.6 (ver 2.6)
-- 
--   Interfaces:
--     Python:                     YES
--     Python numpy:               YES
-- 
--   Documentation:
--     Sphinx:                     /usr/bin/sphinx-build (ver 1.0.1)
--     PdfLaTeX compiler:          /usr/bin/pdflatex
--     Build Documentation:        YES
-- 
--   Tests and samples:
--     Tests:                      YES
--     Performance tests:          YES
--     Examples:                   YES
-- 
--   Install path:                 /usr/local/opencv
-- 
--   cvconfig.h is in:             /home/yourmom/SDK/opencv/trunk/opencv/release
-- -----------------------------------------------------------------
-- 
-- Configuring done
-- Generating done
-- Build files have been written to: /home/yourmom/SDK/opencv/trunk/opencv/release

.... snip ...
[ 29%] Building CXX object modules/highgui/CMakeFiles/opencv_highgui.dir/src/cap_xine.cpp.o
[ 29%] Building CXX object modules/highgui/CMakeFiles/opencv_highgui.dir/src/cap_dc1394_v2.cpp.o
[ 29%] Building CXX object modules/highgui/CMakeFiles/opencv_highgui.dir/src/cap_gstreamer.cpp.o
[ 29%] Building CXX object modules/highgui/CMakeFiles/opencv_highgui.dir/src/cap_unicap.cpp.o
[ 29%] Building CXX object modules/highgui/CMakeFiles/opencv_highgui.dir/src/cap_libv4l.cpp.o
[ 30%] Building CXX object modules/highgui/CMakeFiles/opencv_highgui.dir/src/cap_openni.cpp.o
In file included from /home/yourmom/SDK/opencv/trunk/opencv/modules/highgui/src/cap_openni.cpp:49:
/usr/include/ni/XnCppWrapper.h:4337: warning: ignoring #pragma warning 
/usr/include/ni/XnCppWrapper.h:4338: warning: ignoring #pragma warning 
/usr/include/ni/XnCppWrapper.h:4340: warning: ignoring #pragma warning 
/usr/include/ni/XnCppWrapper.h:4358: warning: ignoring #pragma warning 
/usr/include/ni/XnCppWrapper.h:4359: warning: ignoring #pragma warning 
/usr/include/ni/XnCppWrapper.h:4361: warning: ignoring #pragma warning 
/usr/include/ni/XnCppWrapper.h:4659: warning: ignoring #pragma warning 
/usr/include/ni/XnCppWrapper.h:4660: warning: ignoring #pragma warning 
/usr/include/ni/XnCppWrapper.h:4662: warning: ignoring #pragma warning 
/usr/include/ni/XnCppWrapper.h:4680: warning: ignoring #pragma warning 
/usr/include/ni/XnCppWrapper.h:4681: warning: ignoring #pragma warning 
/usr/include/ni/XnCppWrapper.h:4683: warning: ignoring #pragma warning 
/usr/include/ni/XnCppWrapper.h:5523: warning: ignoring #pragma warning 
/usr/include/ni/XnCppWrapper.h:5524: warning: ignoring #pragma warning 
/usr/include/ni/XnCppWrapper.h:5526: warning: ignoring #pragma warning 
/usr/include/ni/XnCppWrapper.h:5551: warning: ignoring #pragma warning 
/usr/include/ni/XnCppWrapper.h:5552: warning: ignoring #pragma warning 
/usr/include/ni/XnCppWrapper.h:5554: warning: ignoring #pragma warning 
/usr/include/ni/XnCppWrapper.h:5581: warning: ignoring #pragma warning 
/usr/include/ni/XnCppWrapper.h:5582: warning: ignoring #pragma warning 
/usr/include/ni/XnCppWrapper.h:5584: warning: ignoring #pragma warning 
/usr/include/ni/XnCppWrapper.h:5617: warning: ignoring #pragma warning 
/usr/include/ni/XnCppWrapper.h:5618: warning: ignoring #pragma warning 
/usr/include/ni/XnCppWrapper.h:5620: warning: ignoring #pragma warning 
/usr/include/ni/XnCppWrapper.h:5710: warning: ignoring #pragma warning 
/usr/include/ni/XnCppWrapper.h:5711: warning: ignoring #pragma warning 
/usr/include/ni/XnCppWrapper.h:5713: warning: ignoring #pragma warning 
[ 30%] Building CXX object modules/highgui/CMakeFiles/opencv_highgui.dir/src/bitstrm.cpp.o
/usr/include/ni/XnCppWrapper.h: In constructor 'xn::OutputMetaData::OutputMetaData(const XnUInt8**)':
/usr/include/ni/XnCppWrapper.h:253: warning: 'xn::OutputMetaData::m_nAllocatedSize' will be initialized after
/usr/include/ni/XnCppWrapper.h:247: warning:   'XnUInt8* xn::OutputMetaData::m_pAllocatedData'
/usr/include/ni/XnCppWrapper.h:132: warning:   when initialized here
/usr/include/ni/XnCppWrapper.h: In constructor 'xn::DepthMetaData::DepthMetaData()':
/usr/include/ni/XnCppWrapper.h:466: warning: dereferencing type-punned pointer will break strict-aliasing rules
/usr/include/ni/XnCppWrapper.h: In constructor 'xn::ImageMetaData::ImageMetaData()':
/usr/include/ni/XnCppWrapper.h:587: warning: dereferencing type-punned pointer will break strict-aliasing rules
/usr/include/ni/XnCppWrapper.h:588: warning: dereferencing type-punned pointer will break strict-aliasing rules
/usr/include/ni/XnCppWrapper.h:589: warning: dereferencing type-punned pointer will break strict-aliasing rules
/usr/include/ni/XnCppWrapper.h:590: warning: dereferencing type-punned pointer will break strict-aliasing rules
/usr/include/ni/XnCppWrapper.h: In constructor 'xn::IRMetaData::IRMetaData()':
/usr/include/ni/XnCppWrapper.h:768: warning: dereferencing type-punned pointer will break strict-aliasing rules
/usr/include/ni/XnCppWrapper.h: In constructor 'xn::SceneMetaData::SceneMetaData()':
/usr/include/ni/XnCppWrapper.h:920: warning: dereferencing type-punned pointer will break strict-aliasing rules
/usr/include/ni/XnCppWrapper.h: In constructor 'xn::Query::Query(XnNodeQuery*)':
/usr/include/ni/XnCppWrapper.h:1394: warning: 'xn::Query::m_bAllocated' will be initialized after
/usr/include/ni/XnCppWrapper.h:1393: warning:   'XnNodeQuery* xn::Query::m_pQuery'
/usr/include/ni/XnCppWrapper.h:1295: warning:   when initialized here
/usr/include/ni/XnCppWrapper.h: In constructor 'xn::EnumerationErrors::EnumerationErrors()':
/usr/include/ni/XnCppWrapper.h:5449: warning: 'xn::EnumerationErrors::m_bAllocated' will be initialized after
/usr/include/ni/XnCppWrapper.h:5448: warning:   'XnEnumerationErrors* xn::EnumerationErrors::m_pErrors'
/usr/include/ni/XnCppWrapper.h:5349: warning:   when initialized here
/usr/include/ni/XnCppWrapper.h: In constructor 'xn::EnumerationErrors::EnumerationErrors(XnEnumerationErrors*, XnBool)':
/usr/include/ni/XnCppWrapper.h:5449: warning: 'xn::EnumerationErrors::m_bAllocated' will be initialized after
/usr/include/ni/XnCppWrapper.h:5448: warning:   'XnEnumerationErrors* xn::EnumerationErrors::m_pErrors'
/usr/include/ni/XnCppWrapper.h:5357: warning:   when initialized here
/home/yourmom/SDK/opencv/trunk/opencv/modules/highgui/src/cap_openni.cpp: In member function 'void ApproximateSyncGrabber::start()':
/home/yourmom/SDK/opencv/trunk/opencv/modules/highgui/src/cap_openni.cpp:134: error: 'enqueue' is not a member of 'tbb::task'
/home/yourmom/SDK/opencv/trunk/opencv/modules/highgui/src/cap_openni.cpp: In member function 'void ApproximateSyncGrabber::finish()':
/home/yourmom/SDK/opencv/trunk/opencv/modules/highgui/src/cap_openni.cpp:144: error: cannot call member function 'void tbb::task::destroy(tbb::task&)' without object
make[2]: *** [modules/highgui/CMakeFiles/opencv_highgui.dir/src/cap_openni.cpp.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[1]: *** [modules/highgui/CMakeFiles/opencv_highgui.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
Linking CXX shared library ../../lib/libopencv_video.so
[ 30%] Built target opencv_video
make: *** [all] Error 2

#Build succeeds without TBB

-- Detected version of GNU GCC: 44 (404)
-- Extracting svn version, please wait...
-- SVNVERSION:  svn:7923
-- Found OpenEXR: /usr/lib64/libIlmImf.so
--     Use NumPy headers from: /usr/lib/python2.6/dist-packages/numpy/core/include
--     Found Sphinx 1.0.1: /usr/bin/sphinx-build
-- CUDA detected: 4.1
-- CUDA NVCC target flags: -gencode;arch=compute_11,code=sm_11;-gencode;arch=compute_13,code=sm_13;-gencode;arch=compute_13,code=sm_20;-gencode;arch=compute_13,code=sm_21;-gencode;arch=compute_13,code=compute_13
-- 
-- General configuration for OpenCV 2.4.0 =====================================
-- 
--   Platform:
--     Host:                       Linux 2.6.32-34-generic x86_64
--     Target:                     Linux 2.6.32-34-generic x86_64
--     CMake:                      2.8.1
--     CMake generator:            Unix Makefiles
--     CMake build tool:           /usr/bin/make
-- 
--   C++:
--     Built as dynamic libs?:     YES
--     C++ Compiler:               /usr/bin/c++
--     C++ flags (Release):          -Wall -Wno-long-long -pthread -ffunction-sections -O3 -DNDEBUG   -fomit-frame-pointer -msse -msse2 -DNDEBUG
--     C++ flags (Debug):            -Wall -Wno-long-long -pthread -ffunction-sections -g  -O0 -DDEBUG -D_DEBUG -ggdb3
--     Linker flags (Release):
--     Linker flags (Debug):
-- 
--   OpenCV modules:
--     To be built:                calib3d contrib core features2d flann gpu highgui imgproc legacy ml nonfree objdetect photo python stitching ts video videostab
--     Disabled by user:           -
--     Disabled by dependency:     -
--     Unavailable:                androidcamera java
-- 
--   GUI: 
--     GTK+ 2.x:                   YES
--     GThread :                   YES
--     GtkGlExt:                   YES
--     OpenGL support:             YES
-- 
--   Media I/O: 
--     ZLib:                       /usr/lib64/libz.so
--     JPEG:                       /usr/lib64/libjpeg.so
--     PNG:                        /usr/lib64/libpng.so
--     TIFF:                       /usr/lib64/libtiff.so
--     JPEG 2000:                  /usr/lib64/libjasper.so
--     OpenEXR:                    YES
--     OpenNI:                     YES
--     OpenNI PrimeSensor Modules: YES
-- 
--   Video I/O:
--     DC1394 1.x:                 NO
--     DC1394 2.x:                 YES
--     FFMPEG:                     YES
--       codec:                    YES
--       format:                   YES
--       util:                     YES
--       swscale:                  YES
--       gentoo-style:             YES
--     GStreamer:                  YES
--     UniCap:                     YES
--     PvAPI:                      NO
--     V4L/V4L2:                   Using libv4l
--     Xine:                       YES
-- 
--   Other third-party libraries:
--     Use IPP:                    NO
--     Use TBB:                    NO
--     Use Cuda:                   YES
--     Use Eigen:                  YES
-- 
--   Python interpreter:           /usr/bin/python2.6 (ver 2.6)
-- 
--   Interfaces:
--     Python:                     YES
--     Python numpy:               YES
-- 
--   Documentation:
--     Sphinx:                     /usr/bin/sphinx-build (ver 1.0.1)
--     PdfLaTeX compiler:          /usr/bin/pdflatex
--     Build Documentation:        YES
-- 
--   Tests and samples:
--     Tests:                      YES
--     Performance tests:          YES
--     Examples:                   YES
-- 
--   Install path:                 /usr/local/opencv
-- 
--   cvconfig.h is in:             /home/yourmom/SDK/opencv/trunk/opencv/release
-- -----------------------------------------------------------------
-- 
-- Configuring done
-- Generating done
-- Build files have been written to: /home/yourmom/SDK/opencv/trunk/opencv/release


Related issues

related to Feature #1792: See if we can provide threaded version of cap_openni.cpp ... Open 2012-04-11

Associated revisions

Revision e4ca7118
Added by Andrey Kamaev almost 13 years ago

#1782 Threading optimization of OpenNI wrapper is disabled for TBB < 3.0

Revision 83470549
Added by Roman Donchenko over 11 years ago

Merge pull request #1782 from ilya-lavrenov:ocl_adapBilat

History

Updated by Kirill Kornyakov almost 13 years ago

  • Description changed from OS: Ubuntu 10.04 LTS #Compile Fails with TBB and OpenNI-Bin-Dev-Linux-x64-v1... to OS: Ubuntu 10.04 LTS #Compile Fails with TBB and OpenNI-Bin-Dev-Linux-x64-v1... More

Updated by Andrey Kamaev almost 13 years ago

Thanks for report!

Threading optimization in cap_openni.cpp requires TBB 3.0 or newer while ubuntu has TBB 2.2 by default. For now threading is disabled for older TBB.

  • Status changed from Open to Done
  • Assignee changed from Alexander Shishkov to Andrey Kamaev

Also available in: Atom PDF