I am building opencv 2.4.5 from source, with options to support clang, c++ 11, and libc++. When running make, I get the error listed in the section below.
I have also checked out the master branch from https://github.com/Itseez/opencv/archive/master.zip and verified that this same problem occurs (The stack trace below is from opencv-master, checked out today). Does anyone one have any idea on how to fix this issue?
My environment is the following:
OS:
Mac OSX 10.6.8
Clang:
clang version 3.3 (trunk 180676) Target: x86_64-apple-darwin10.8.0 Thread model: posix
Cmake command:
cmake -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++ -DCMAKE_CXX_FLAGS="-stdlib=libc++" -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D BUILD_PERF_TESTS=OFF -D BUILD_TESTS=OFF -D WITH_CUDA=OFF ../
This is the error that I get:
Scanning dependencies of target opencv_legacy [ 59%] Building CXX object modules/legacy/CMakeFiles/opencv_legacy.dir/src/3dtracker.cpp.o [ 59%] Building CXX object modules/legacy/CMakeFiles/opencv_legacy.dir/src/auxutils.cpp.o [ 59%] Building CXX object modules/legacy/CMakeFiles/opencv_legacy.dir/src/bgfg_acmmm2003.cpp.o [ 59%] Building CXX object modules/legacy/CMakeFiles/opencv_legacy.dir/src/bgfg_codebook.cpp.o [ 59%] Building CXX object modules/legacy/CMakeFiles/opencv_legacy.dir/src/bgfg_common.cpp.o [ 60%] Building CXX object modules/legacy/CMakeFiles/opencv_legacy.dir/src/bgfg_estimation.cpp.o [ 60%] Building CXX object modules/legacy/CMakeFiles/opencv_legacy.dir/src/bgfg_gaussmix.cpp.o [ 60%] Building CXX object modules/legacy/CMakeFiles/opencv_legacy.dir/src/blobtrack.cpp.o [ 60%] Building CXX object modules/legacy/CMakeFiles/opencv_legacy.dir/src/blobtrackanalysis.cpp.o [ 60%] Building CXX object modules/legacy/CMakeFiles/opencv_legacy.dir/src/blobtrackanalysishist.cpp.o [ 60%] Building CXX object modules/legacy/CMakeFiles/opencv_legacy.dir/src/blobtrackanalysisior.cpp.o [ 60%] Building CXX object modules/legacy/CMakeFiles/opencv_legacy.dir/src/blobtrackanalysistrackdist.cpp.o [ 60%] Building CXX object modules/legacy/CMakeFiles/opencv_legacy.dir/src/blobtrackgen1.cpp.o [ 61%] Building CXX object modules/legacy/CMakeFiles/opencv_legacy.dir/src/blobtrackgenyml.cpp.o [ 61%] Building CXX object modules/legacy/CMakeFiles/opencv_legacy.dir/src/blobtrackingauto.cpp.o [ 61%] Building CXX object modules/legacy/CMakeFiles/opencv_legacy.dir/src/blobtrackingcc.cpp.o [ 61%] Building CXX object modules/legacy/CMakeFiles/opencv_legacy.dir/src/blobtrackingccwithcr.cpp.o [ 61%] Building CXX object modules/legacy/CMakeFiles/opencv_legacy.dir/src/blobtrackinglist.cpp.o [ 61%] Building CXX object modules/legacy/CMakeFiles/opencv_legacy.dir/src/blobtrackingmsfg.cpp.o [ 61%] Building CXX object modules/legacy/CMakeFiles/opencv_legacy.dir/src/blobtrackingmsfgs.cpp.o [ 61%] Building CXX object modules/legacy/CMakeFiles/opencv_legacy.dir/src/blobtrackpostprockalman.cpp.o [ 61%] Building CXX object modules/legacy/CMakeFiles/opencv_legacy.dir/src/blobtrackpostproclinear.cpp.o [ 62%] Building CXX object modules/legacy/CMakeFiles/opencv_legacy.dir/src/blobtrackpostproclist.cpp.o [ 62%] Building CXX object modules/legacy/CMakeFiles/opencv_legacy.dir/src/calcimagehomography.cpp.o [ 62%] Building CXX object modules/legacy/CMakeFiles/opencv_legacy.dir/src/calibfilter.cpp.o [ 62%] Building CXX object modules/legacy/CMakeFiles/opencv_legacy.dir/src/calonder.cpp.o [ 62%] Building CXX object modules/legacy/CMakeFiles/opencv_legacy.dir/src/camshift.cpp.o [ 62%] Building CXX object modules/legacy/CMakeFiles/opencv_legacy.dir/src/clique.cpp.o [ 62%] Building CXX object modules/legacy/CMakeFiles/opencv_legacy.dir/src/compat.cpp.o [ 62%] Building CXX object modules/legacy/CMakeFiles/opencv_legacy.dir/src/condens.cpp.o [ 63%] Building CXX object modules/legacy/CMakeFiles/opencv_legacy.dir/src/contourtree.cpp.o [ 63%] Building CXX object modules/legacy/CMakeFiles/opencv_legacy.dir/src/correspond.cpp.o [ 63%] Building CXX object modules/legacy/CMakeFiles/opencv_legacy.dir/src/corrimages.cpp.o [ 63%] Building CXX object modules/legacy/CMakeFiles/opencv_legacy.dir/src/createhandmask.cpp.o [ 63%] Building CXX object modules/legacy/CMakeFiles/opencv_legacy.dir/src/decomppoly.cpp.o [ 63%] Building CXX object modules/legacy/CMakeFiles/opencv_legacy.dir/src/dominants.cpp.o [ 63%] Building CXX object modules/legacy/CMakeFiles/opencv_legacy.dir/src/dpstereo.cpp.o /opencv-master/modules/legacy/src/dpstereo.cpp:164:19: error: multiple unsequenced modifications to 'temp3' [-Werror,-Wunsequenced] if( ( CV_IMAX3( srcdata1[j-3], srcdata1[j-2], srcdata1[j-1] ) - ^ /opencv-master/modules/legacy/src/dpstereo.cpp:79:33: note: expanded from macro 'CV_IMAX3'
define CV_IMAX3(a,b,c) ((temp3 = (a) >= (b) ? (a) : (b)),(temp3 >= (c) ? temp3 : (c)))
^
/opencv-master/modules/legacy/src/dpstereo.cpp:169:19: error: multiple unsequenced modifications to 'temp3' [-Werror,-Wunsequenced] if( ( CV_IMAX3( srcdata2[j+3], srcdata2[j+2], srcdata2[j+1] ) - ^ /opencv-master/modules/legacy/src/dpstereo.cpp:79:33: note: expanded from macro 'CV_IMAX3'
define CV_IMAX3(a,b,c) ((temp3 = (a) >= (b) ? (a) : (b)),(temp3 >= (c) ? temp3 : (c)))
^
/opencv-master/modules/legacy/src/dpstereo.cpp:322:19: error: multiple unsequenced modifications to 'temp3' [-Werror,-Wunsequenced] if( ( CV_IMAX3( src1[(y-1)widthStep+x], src1[ywidthStep+x], ^ /opencv-master/modules/legacy/src/dpstereo.cpp:79:33: note: expanded from macro 'CV_IMAX3'
define CV_IMAX3(a,b,c) ((temp3 = (a) >= (b) ? (a) : (b)),(temp3 >= (c) ? temp3 : (c)))
^
3 errors generated. make[2]: * [modules/legacy/CMakeFiles/opencv_legacy.dir/src/dpstereo.cpp.o] Error 1 make[1]: * [modules/legacy/CMakeFiles/opencv_legacy.dir/all] Error 2