Updated by Andrey Kamaev about 13 years ago

build of 2.3.1a on Solaris 11 with Solaris Studio 12.3 fails with the below error.
I'm not really proficient in c++, so I'm not sure it's the best approach, but the attached patch fixed it for me

<pre>


------------
[ 30%] Building CXX object modules/ts/CMakeFiles/opencv_ts.dir/src/ts.o
cd /opt/test2/packages/BUILD/OpenCV-2.3.1a/i386/OpenCV-2.3.1/build/modules/ts && /opt/test2/SolarisStudio12.3-solaris-x86-bin/solarisstudio12.3/bin/CC -Dopencv_ts_EXPORTS -DHAVE_CVCONFIG_H -DGTEST_CREATE_SHARED_LIBRARY=1 -DCVAPI_EXPORTS -D_REENTRANT -DNDEBUG -D+EXTENSIONS+ -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_POSIX_PTHREAD_SEMANTICS -DSOLARIS -DNO_DEBUG -D_UNICODE -DUNICODE -D_RWSTD_REENTRANT -D_XOPEN_SOURCE=500 -D_XPG5 -I/opt/kde4/include -features=extensions,nestedaccess,tmplrefstatic -template=geninlinefuncs -xlang=c99 -xustr=ascii_utf16_ushort -Qoption ccfe -features=gcc -Qoption ccfe -features=zla -Qoption ccfe ++boolflag:sunwcch=false -xinline=%auto -xprefetch=auto -xprefetch_auto_type=indirect_array_access -xprefetch_level=3 -KPIC -DPIC -xipo=0 -xO3 -xregs=no%frameptr -xjobs=2 -xrestrict=%all -xthreadvar=%all -z combreloc -z redlocsym -z nodefaultlib -z ignore -z now -z rescan -z absexec -xldscope=symbolic -xlibmil -m32 -xarch=sse2 -lc -lm -ldl -lpthread -lposix4 -lrt -Y P,/opt/kde4/lib -i -L/opt/kde4/lib -R/opt/kde4/lib -L/usr/lib -R/usr/lib -Bdynamic -library=stdcxx4 -lCrun -lc -lm -m32 -g -Y P,/opt/kde4/lib -i -L/opt/kde4/lib -R/opt/kde4/lib -L/usr/lib -R/usr/lib -Bdynamic -library=stdcxx4 -lCrun -lc -lm -m32 -xarch=sse2 -xipo=0 -xO3 -xO3 -DNDEBUG -KPIC -I/usr/lib/python2.6/vendor-packages/numpy/core/include -I/opt/test2/packages/BUILD/OpenCV-2.3.1a/i386/OpenCV-2.3.1/. -I/opt/test2/packages/BUILD/OpenCV-2.3.1a/i386/OpenCV-2.3.1/build -I/opt/test2/packages/BUILD/OpenCV-2.3.1a/i386/OpenCV-2.3.1/include -I/opt/test2/packages/BUILD/OpenCV-2.3.1a/i386/OpenCV-2.3.1/include/opencv -I/opt/test2/packages/BUILD/OpenCV-2.3.1a/i386/OpenCV-2.3.1/modules/ts/include -I/opt/test2/packages/BUILD/OpenCV-2.3.1a/i386/OpenCV-2.3.1/modules/ts/src -I/opt/test2/packages/BUILD/OpenCV-2.3.1a/i386/OpenCV-2.3.1/build/modules/ts -I/opt/test2/packages/BUILD/OpenCV-2.3.1a/i386/OpenCV-2.3.1/modules/ts/../core/include -D PYTHON_USE_NUMPY=1 -o CMakeFiles/opencv_ts.dir/src/ts.o -c /opt/test2/packages/BUILD/OpenCV-2.3.1a/i386/OpenCV-2.3.1/modules/ts/src/ts.cpp
"/opt/test2/packages/BUILD/OpenCV-2.3.1a/i386/OpenCV-2.3.1/modules/ts/src/ts.cpp", line 42: Warning: Last line in file "/opt/test2/packages/BUILD/OpenCV-2.3.1a/i386/OpenCV-2.3.1/modules/ts/src/precomp.hpp" is not terminated with a newline.
"/opt/test2/packages/BUILD/OpenCV-2.3.1a/i386/OpenCV-2.3.1/modules/ts/src/ts.cpp", line 466: Warning (Anachronism): Formal argument 2 of type extern "C" void(*)(int) in call to cvtest::std::signal(int, extern "C" void(*)(int)) is being passed void(*)(int).
"/opt/test2/packages/BUILD/OpenCV-2.3.1a/i386/OpenCV-2.3.1/modules/ts/src/ts.cpp", line 555: Error: string is not a member of cvtest::std.
1 Error(s) and 2 Warning(s) detected.
gmaker2: *** [modules/ts/CMakeFiles/opencv_ts.dir/src/ts.o] Error 2
</pre>

Back