Closed why-freedom closed 5 years ago
Hi, thanks for reporting these build errors.
It seems you are working with OIIO 1.7 dating from mid 2016.
I think it's likely that the issues you describe have long since been fixed, and I encourage you to try using the current supported production release, 2.0.
I'm sure your issue # 1 has been fixed. I'm not sure about # 2, but it's possible that various compile flags have been adjusted to make it ignore the "error" (which really shouldn't be a problem).
I'm going to close this issue because we no longer patch 1.7. If you try with 2.0 or the current master and you still have trouble, please file a new issue or re-open this one.
PLEASE DO NOT REPORT BUILD TROUBLES AS ISSUES Issues 1: /home/why/SLAM_WS/Kidnap/src/oiio/src/libutil/strutil.cpp: In function ‘void OpenImageIO::v1_7::Strutil::utf8_to_unicode(OpenImageIO::v1_7::string_view, std::vector&)’:
/home/why/SLAM_WS/Kidnap/src/oiio/src/libutil/strutil.cpp:877:23: error: ‘codepoint’ may be used uninitialized in this function [-Werror=maybe-uninitialized]
(byte & 0x3fu) | (*codep << 6) :
Issues 2: /home/why/SLAM_WS/Kidnap/src/oiio/src/rla.imageio/rlaoutput.cpp:174:6: error: ‘%.10f’ directive output truncated writing between 12 and 321 bytes into a region of size 8 [-Werror=format-truncation=] bool RLAOutput::open (const std::string &name, const ImageSpec &userspec, ^
~~~~ In file included from /usr/include/stdio.h:936:0, from /usr/include/c++/7/cstdio:42, from /home/why/SLAM_WS/Kidnap/src/oiio/src/rla.imageio/rlaoutput.cpp:31: /usr/include/x86_64-linux-gnu/bits/stdio2.h:65:44: note: ‘builtin___snprintf_chk’ output between 13 and 322 bytes into a destination of size 8 bos (s), fmt, __va_arg_pack ()); The best way to get help with your build problems is to ask a question on the oiio-dev developer mail list.When you email about this, please attach one or both of the following:
make clean ; make VERBOSE=1 > build.log
platform=linux64, hw=x86_64 OPENIMAGEIO_SITE = why-desktop dist_dir = dist/linux64 INSTALLDIR = /home/why/SLAM_WS/Kidnap/src/oiio Re-run cmake no build system arguments -- The C compiler identification is GNU 7.4.0 -- The CXX compiler identification is GNU 7.4.0 -- Check for working C compiler: /usr/bin/cc -- Check for working C compiler: /usr/bin/cc -- works -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done -- Detecting C compile features -- Detecting C compile features - done -- Check for working CXX compiler: /usr/bin/c++ -- Check for working CXX compiler: /usr/bin/c++ -- works -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Detecting CXX compile features -- Detecting CXX compile features - done -- Project source dir = /home/why/SLAM_WS/Kidnap/src/oiio -- Project build dir = /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64 -- CMAKE_CXX_COMPILER is /usr/bin/c++ -- CMAKE_CXX_COMPILER_ID is GNU -- Using gcc 7 as the compiler -- Building with thread support -- Building for C++11 -- Setting Namespace to: OpenImageIO -- CMAKE_SYSTEM_NAME = Linux -- CMAKE_SYSTEM_VERSION = 4.15.0-65-generic -- CMAKE_SYSTEM_PROCESSOR = x86_64 -- Unix! Linux -- platform = linux64 -- THIRD_PARTY_TOOLS_HOME = unknown -- SPECIAL_COMPILE_FLAGS = -- Found TIFF: /usr/lib/x86_64-linux-gnu/libtiff.so (found version "4.0.6") -- Found ZLIB: /usr/lib/x86_64-linux-gnu/libz.so (found version "1.2.8") -- Found PNG: /usr/lib/x86_64-linux-gnu/libpng.so (found version "1.2.54") -- Looking for pthread.h -- Looking for pthread.h - found -- Looking for pthread_create -- Looking for pthread_create - not found -- Looking for pthread_create in pthreads -- Looking for pthread_create in pthreads - not found -- Looking for pthread_create in pthread -- Looking for pthread_create in pthread - found -- Found Threads: TRUE-- Found OpenEXR: /usr/include (found version "2.2.0") -- OPENEXR_INCLUDE_DIR = /usr/include -- OPENEXR_LIBRARIES = /usr/lib/x86_64-linux-gnu/libIlmImf.so;/usr/lib/x86_64-linux-gnu/libImath.so;/usr/lib/x86_64-linux-gnu/libIex.so;/usr/lib/x86_64-linux-gnu/libHalf.so;/usr/lib/x86_64-linux-gnu/libIlmThread.so;-lpthread;/usr/lib/x86_64-linux-gnu/libz.so -- BOOST_ROOT -- Boost version: 1.66.0 -- Found the following Boost libraries: -- filesystem -- regex -- system -- thread -- BOOST_ROOT -- Boost found 1 -- Boost version 106600 -- Boost include dirs /usr/local/include -- Boost library dirs /usr/local/lib -- Boost libraries /usr/local/lib/libboost_filesystem.so;/usr/local/lib/libboost_regex.so;/usr/local/lib/libboost_system.so;/usr/local/lib/libboost_thread.so;rt -- Boost python found ON -- Found OpenGL: /usr/lib/x86_64-linux-gnu/libGL.so
-- OPENGL_FOUND=TRUE USE_OPENGL=ON -- OCIO not found. Specify OCIO_PATH to locate it -- Skipping OpenColorIO support -- Looking for Q_WS_X11 -- Looking for Q_WS_X11 - found -- Looking for Q_WS_WIN -- Looking for Q_WS_WIN - not found -- Looking for Q_WS_QWS -- Looking for Q_WS_QWS - not found -- Looking for Q_WS_MAC -- Looking for Q_WS_MAC - not found -- Found Qt4: /usr/bin/qmake-qt4 (found version "4.8.7") -- QT4_FOUND=TRUE -- QT_INCLUDES=/usr/include/qt4/QtDesigner;/usr/include/qt4/QtDeclarative;/usr/include/qt4/QtScriptTools;/usr/include/qt4/QtDBus;/usr/include/qt4/QtDesigner;/usr/include/qt4/QtXml;/usr/include/qt4/QtSql;/usr/include/qt4/QtOpenGL;/usr/include/qt4/QtNetwork;/usr/include/qt4/phonon;/usr/include/qt4/QtXmlPatterns;/usr/include/qt4/QtWebKit;/usr/include/qt4/QtHelp;/usr/include/qt4/QtUiTools;/usr/include/qt4/QtTest;/usr/include/qt4/QtScript;/usr/include/qt4/QtSvg;/usr/include/qt4/Qt3Support;/usr/include/qt4/QtGui;/usr/include/qt4/QtCore;/usr/share/qt4/mkspecs/default;/usr/include/qt4;/usr/include/qt4/QtCore -- QT_LIBRARIES= -- GLEW includes = /usr/include/GL -- GLEW library = /usr/lib/x86_64-linux-gnu/libGLEW.so -- Found BZip2: /usr/lib/x86_64-linux-gnu/libbz2.so (found version "1.0.6") -- Looking for BZ2_bzCompressInit -- Looking for BZ2_bzCompressInit - found -- Found PkgConfig: /usr/bin/pkg-config (found version "0.29.1") -- Found FFMPEG or Libav: /usr/local/lib/libavcodec.so;/usr/local/lib/libavformat.so;/usr/local/lib/libavutil.so;/usr/local/lib/libswscale.so, /usr/local/include -- FFMPEG includes = /usr/local/include -- FFMPEG library = /usr/local/lib/libavcodec.so;/usr/local/lib/libavformat.so;/usr/local/lib/libavutil.so;/usr/local/lib/libswscale.so -- HDF5_FOUND= -- HDF5_LIBRARIES=HDF5_LIBRARIES-NOTFOUND -- Field3d will not be used -- Found JPEG: /usr/lib/x86_64-linux-gnu/libjpeg.so
-- Could NOT find OpenJpeg (missing: OPENJPEG_INCLUDE_DIR OPENJPEG_OPENJPEG_LIBRARIES) -- Looking for LibRaw with -- Could NOT find LibRaw (missing: LibRaw_LIBRARIES LibRaw_INCLUDE_DIR) -- LibRaw not found! -- WEBP_HOME= -- WEBP includes = /usr/include -- WEBP library = /usr/lib/x86_64-linux-gnu/libwebp.so -- Found OpenCV: /usr/local/lib/libopencv_videoio.so;/usr/local/lib/libopencv_highgui.so;/usr/local/lib/libopencv_core.so (found version "3.4.3") -- Found FREETYPE library /usr/lib/x86_64-linux-gnu/libfreetype.so -- Found FREETYPE includes /usr/include/freetype2;/usr/include/freetype2/freetype2;/usr/include/freetype2/freetype2/freetype -- Freetype includes = /usr/include/freetype2;/usr/include/freetype2/freetype2;/usr/include/freetype2/freetype2/freetype -- Freetype libs = /usr/lib/x86_64-linux-gnu/libfreetype.so -- OpenSSL disabled -- Found GIF: /usr/lib/x86_64-linux-gnu/libgif.so (found version "5.1.4") -- Could NOT find PTex (missing: PTEX_INCLUDE_DIR PTEX_LIBRARY) -- Setting SOVERSION to: 1.7 -- Create imagio_pvt.h from imageio_pvt.h.in -- Setting SOVERSION to: 1.7 -- Found PythonLibs: /usr/lib/x86_64-linux-gnu/libpython2.7.so (found suitable version "2.7.12", minimum required is "2.6") -- Boost version: 1.66.0 -- Found the following Boost libraries: -- python -- Python found TRUE -- Python include dirs /usr/include/python2.7 -- Python libraries /usr/lib/x86_64-linux-gnu/libpython2.7.so -- Python to include 'lib' prefix: OFF -- Python to include SO version: OFF -- Create oiioversion.h from oiioversion.h.in -- Found PythonInterp: /usr/bin/python (found version "2.7.12") -- Could NOT find Nuke (missing: NUKE_DDIMAGE_LIBRARY NUKE_INCLUDE_DIRS NUKE_LIBRARY_DIRS NUKE_EXECUTABLE) (Required is at least version "7.0") -- Could not Find Nuke. Skipping build of Nuke plugins. -- TEST gpsread: /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/runtest.py /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/gpsread -- TEST misnamed-file: /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/runtest.py /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/misnamed-file -- TEST nonwhole-tiles: /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/runtest.py /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/nonwhole-tiles -- TEST oiiotool: /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/runtest.py /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/oiiotool -- TEST oiiotool-composite: /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/runtest.py /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/oiiotool-composite -- TEST oiiotool-deep: /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/runtest.py /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/oiiotool-deep -- TEST oiiotool-fixnan: /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/runtest.py /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/oiiotool-fixnan -- TEST oiiotool-pattern: /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/runtest.py /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/oiiotool-pattern -- TEST oiiotool-readerror: /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/runtest.py /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/oiiotool-readerror -- TEST oiiotool-subimage: /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/runtest.py /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/oiiotool-subimage -- TEST oiiotool-text: /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/runtest.py /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/oiiotool-text -- TEST maketx: /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/runtest.py /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/maketx -- TEST oiiotool-maketx: /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/runtest.py /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/oiiotool-maketx -- TEST dither: /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/runtest.py /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/dither -- TEST dpx: /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/runtest.py /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/dpx -- TEST ico: /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/runtest.py /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/ico -- TEST iff: /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/runtest.py /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/iff -- TEST png: /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/runtest.py /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/png -- TEST psd: /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/runtest.py /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/psd -- TEST rla: /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/runtest.py /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/rla -- TEST sgi: /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/runtest.py /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/sgi -- TEST python-typedesc: /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/runtest.py /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/python-typedesc -- TEST python-imagespec: /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/runtest.py /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/python-imagespec -- TEST python-roi: /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/runtest.py /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/python-roi -- TEST python-deep: /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/runtest.py /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/python-deep -- TEST python-imageinput: /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/runtest.py /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/python-imageinput -- TEST python-imageoutput: /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/runtest.py /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/python-imageoutput -- TEST python-imagebuf: /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/runtest.py /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/python-imagebuf -- TEST python-imagebufalgo: /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/runtest.py /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/python-imagebufalgo -- TEST texture-interp-bicubic: /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/runtest.py /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/texture-interp-bicubic -- TEST texture-blurtube: /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/runtest.py /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/texture-blurtube -- TEST texture-crop: /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/runtest.py /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/texture-crop -- TEST texture-cropover: /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/runtest.py /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/texture-cropover -- TEST texture-derivs: /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/runtest.py /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/texture-derivs -- TEST texture-fill: /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/runtest.py /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/texture-fill -- TEST texture-filtersize: /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/runtest.py /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/texture-filtersize -- TEST texture-flipt: /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/runtest.py /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/texture-flipt -- TEST texture-gray: /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/runtest.py /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/texture-gray -- TEST texture-mip-nomip: /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/runtest.py /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/texture-mip-nomip -- TEST texture-mip-trilinear: /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/runtest.py /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/texture-mip-trilinear -- TEST texture-overscan: /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/runtest.py /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/texture-overscan -- TEST texture-pointsample: /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/runtest.py /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/texture-pointsample -- TEST texture-uint8: /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/runtest.py /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/texture-uint8 -- TEST texture-width0blur: /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/runtest.py /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/texture-width0blur -- TEST texture-fat: /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/runtest.py /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/texture-fat -- TEST texture-skinny: /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/runtest.py /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/texture-skinny -- TEST texture-wrapfill: /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/runtest.py /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/texture-wrapfill -- TEST texture-missing: /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/runtest.py /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/texture-missing -- TEST texture-res: /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/runtest.py /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/texture-res -- TEST texture-udim: /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/runtest.py /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/texture-udim -- TEST texture-udim2: /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/runtest.py /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/texture-udim2 -- TEST texture-half: /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/runtest.py /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/texture-half -- TEST texture-uint16: /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/runtest.py /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/texture-uint16 -- TEST texture-interp-bilinear: /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/runtest.py /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/texture-interp-bilinear -- TEST texture-interp-closest: /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/runtest.py /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/texture-interp-closest -- TEST texture-mip-onelevel: /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/runtest.py /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/texture-mip-onelevel -- TEST texture-icwrite: /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/runtest.py /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/texture-icwrite --
Did not find /home/why/SLAM_WS/Kidnap/src/oiio/../bmpsuite -- -> Will not run tests bmp -- -> You can find it at http://entropymine.com/jason/bmpsuite/bmpsuite.zip
--
Did not find /home/why/SLAM_WS/Kidnap/src/oiio/../libtiffpic -- -> Will not run tests tiff-suite;tiff-depths;tiff-misc -- -> You can find it at http://www.remotesensing.org/libtiff/images.html
--
Did not find /home/why/SLAM_WS/Kidnap/src/oiio/../openexr-images -- -> Will not run tests openexr-suite;openexr-multires;openexr-chroma;openexr-v2;perchannel -- -> You can find it at http://www.openexr.com/downloads.html
--
Did not find /home/why/SLAM_WS/Kidnap/src/oiio/../oiio-images -- -> Will not run tests gif -- -> You can find it at Recent checkout of oiio-images
--
Did not find /home/why/SLAM_WS/Kidnap/src/oiio/../j2kp4files_v1_5 -- -> Will not run tests jpeg2000 -- -> You can find it at http://www.itu.int/net/ITU-T/sigdb/speimage/ImageForm-s.aspx?val=10100803
--
Did not find /home/why/SLAM_WS/Kidnap/src/oiio/../oiio-images/pnm -- -> Will not run tests pnm -- -> You can find it at Recent checkout of oiio-images
--
Did not find /home/why/SLAM_WS/Kidnap/src/oiio/../TGAUTILS -- -> Will not run tests targa-tgautils -- -> You can find it at http://tgautils.inequation.org/
--
Did not find /home/why/SLAM_WS/Kidnap/src/oiio/../fits-images -- -> Will not run tests fits -- -> You can find it at http://www.cv.nrao.edu/fits/data/tests/
--
Did not find /home/why/SLAM_WS/Kidnap/src/oiio/../webp-images -- -> Will not run tests webp -- -> You can find it at http://code.google.com/speed/webp/gallery.html
-- TEST ptex-broken: /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/runtest.py /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/ptex -- TEST texture-field3d-broken: /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/runtest.py /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/texture-field3d -- TEST field3d-broken: /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/runtest.py /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/field3d -- Configuring done -- Generating done -- Build files have been written to: /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64 make[1]: Entering directory '/home/why/SLAM_WS/Kidnap/src/oiio/build/linux64' /usr/local/bin/cmake -H/home/why/SLAM_WS/Kidnap/src/oiio -B/home/why/SLAM_WS/Kidnap/src/oiio/build/linux64 --check-build-system CMakeFiles/Makefile.cmake 0 /usr/local/bin/cmake -E cmake_progress_start /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/CMakeFiles /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/CMakeFiles/progress.marks make -f CMakeFiles/Makefile2 all make[2]: Entering directory '/home/why/SLAM_WS/Kidnap/src/oiio/build/linux64' make -f CMakeFiles/CopyFiles.dir/build.make CMakeFiles/CopyFiles.dir/depend make[3]: Entering directory '/home/why/SLAM_WS/Kidnap/src/oiio/build/linux64' cd /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64 && /usr/local/bin/cmake -E cmake_depends "Unix Makefiles" /home/why/SLAM_WS/Kidnap/src/oiio /home/why/SLAM_WS/Kidnap/src/oiio /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64 /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64 /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/CMakeFiles/CopyFiles.dir/DependInfo.cmake --color= Dependee "/home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/CMakeFiles/CopyFiles.dir/DependInfo.cmake" is newer than depender "/home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/CMakeFiles/CopyFiles.dir/depend.internal". Dependee "/home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/CMakeFiles/CMakeDirectoryInformation.cmake" is newer than depender "/home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/CMakeFiles/CopyFiles.dir/depend.internal". Scanning dependencies of target CopyFiles make[3]: Leaving directory '/home/why/SLAM_WS/Kidnap/src/oiio/build/linux64' make -f CMakeFiles/CopyFiles.dir/build.make CMakeFiles/CopyFiles.dir/build make[3]: Entering directory '/home/why/SLAM_WS/Kidnap/src/oiio/build/linux64' [ 0%] Generating testsuite/runtest.py /usr/local/bin/cmake -E copy_if_different /home/why/SLAM_WS/Kidnap/src/oiio/testsuite/runtest.py /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/testsuite/runtest.py make[3]: Leaving directory '/home/why/SLAM_WS/Kidnap/src/oiio/build/linux64' [ 0%] Built target CopyFiles make -f src/libutil/CMakeFiles/OpenImageIO_Util.dir/build.make src/libutil/CMakeFiles/OpenImageIO_Util.dir/depend make[3]: Entering directory '/home/why/SLAM_WS/Kidnap/src/oiio/build/linux64' cd /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64 && /usr/local/bin/cmake -E cmake_depends "Unix Makefiles" /home/why/SLAM_WS/Kidnap/src/oiio /home/why/SLAM_WS/Kidnap/src/oiio/src/libutil /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64 /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/src/libutil /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/src/libutil/CMakeFiles/OpenImageIO_Util.dir/DependInfo.cmake --color= Dependee "/home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/src/libutil/CMakeFiles/OpenImageIO_Util.dir/DependInfo.cmake" is newer than depender "/home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/src/libutil/CMakeFiles/OpenImageIO_Util.dir/depend.internal". Dependee "/home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/src/libutil/CMakeFiles/CMakeDirectoryInformation.cmake" is newer than depender "/home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/src/libutil/CMakeFiles/OpenImageIO_Util.dir/depend.internal". Scanning dependencies of target OpenImageIO_Util make[3]: Leaving directory '/home/why/SLAM_WS/Kidnap/src/oiio/build/linux64' make -f src/libutil/CMakeFiles/OpenImageIO_Util.dir/build.make src/libutil/CMakeFiles/OpenImageIO_Util.dir/build make[3]: Entering directory '/home/why/SLAM_WS/Kidnap/src/oiio/build/linux64' [ 1%] Building CXX object src/libutil/CMakeFiles/OpenImageIO_Util.dir/argparse.cpp.o cd /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/src/libutil && /usr/bin/c++ -DOpenImageIO_Util_EXPORTS -DUSE_FREETYPE -DUSE_JPEG_TURBO=1 -DUSE_OPENCV -DUSE_OPENEXR_VERSION2=1 -DSTDC_CONSTANT_MACROS -DSTDC_LIMIT_MACROS -I/usr/include/x86_64-linux-gnu -I/usr/include/OpenEXR -isystem /usr/local/include -I/home/why/SLAM_WS/Kidnap/src/oiio/src/include -I/home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/include/OpenImageIO -std=c++11 -O3 -DNDEBUG -fPIC -Wall -Werror -fno-math-errno -Wno-error=unused-local-typedefs -Wno-unused-local-typedefs -Wno-unused-result -Wno-error=misleading-indentation -std=c++11 -UUSE_FIELD3D -o CMakeFiles/OpenImageIO_Util.dir/argparse.cpp.o -c /home/why/SLAM_WS/Kidnap/src/oiio/src/libutil/argparse.cpp [ 1%] Building CXX object src/libutil/CMakeFiles/OpenImageIO_Util.dir/errorhandler.cpp.o cd /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/src/libutil && /usr/bin/c++ -DOpenImageIO_Util_EXPORTS -DUSE_FREETYPE -DUSE_JPEG_TURBO=1 -DUSE_OPENCV -DUSE_OPENEXR_VERSION2=1 -DSTDC_CONSTANT_MACROS -DSTDC_LIMIT_MACROS -I/usr/include/x86_64-linux-gnu -I/usr/include/OpenEXR -isystem /usr/local/include -I/home/why/SLAM_WS/Kidnap/src/oiio/src/include -I/home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/include/OpenImageIO -std=c++11 -O3 -DNDEBUG -fPIC -Wall -Werror -fno-math-errno -Wno-error=unused-local-typedefs -Wno-unused-local-typedefs -Wno-unused-result -Wno-error=misleading-indentation -std=c++11 -UUSE_FIELD3D -o CMakeFiles/OpenImageIO_Util.dir/errorhandler.cpp.o -c /home/why/SLAM_WS/Kidnap/src/oiio/src/libutil/errorhandler.cpp [ 2%] Building CXX object src/libutil/CMakeFiles/OpenImageIO_Util.dir/filesystem.cpp.o cd /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/src/libutil && /usr/bin/c++ -DOpenImageIO_Util_EXPORTS -DUSE_FREETYPE -DUSE_JPEG_TURBO=1 -DUSE_OPENCV -DUSE_OPENEXR_VERSION2=1 -DSTDC_CONSTANT_MACROS -DSTDC_LIMIT_MACROS -I/usr/include/x86_64-linux-gnu -I/usr/include/OpenEXR -isystem /usr/local/include -I/home/why/SLAM_WS/Kidnap/src/oiio/src/include -I/home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/include/OpenImageIO -std=c++11 -O3 -DNDEBUG -fPIC -Wall -Werror -fno-math-errno -Wno-error=unused-local-typedefs -Wno-unused-local-typedefs -Wno-unused-result -Wno-error=misleading-indentation -std=c++11 -UUSE_FIELD3D -o CMakeFiles/OpenImageIO_Util.dir/filesystem.cpp.o -c /home/why/SLAM_WS/Kidnap/src/oiio/src/libutil/filesystem.cpp [ 2%] Building CXX object src/libutil/CMakeFiles/OpenImageIO_Util.dir/farmhash.cpp.o cd /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/src/libutil && /usr/bin/c++ -DOpenImageIO_Util_EXPORTS -DUSE_FREETYPE -DUSE_JPEG_TURBO=1 -DUSE_OPENCV -DUSE_OPENEXR_VERSION2=1 -DSTDC_CONSTANT_MACROS -DSTDC_LIMIT_MACROS -I/usr/include/x86_64-linux-gnu -I/usr/include/OpenEXR -isystem /usr/local/include -I/home/why/SLAM_WS/Kidnap/src/oiio/src/include -I/home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/include/OpenImageIO -std=c++11 -O3 -DNDEBUG -fPIC -Wall -Werror -fno-math-errno -Wno-error=unused-local-typedefs -Wno-unused-local-typedefs -Wno-unused-result -Wno-error=misleading-indentation -std=c++11 -UUSE_FIELD3D -o CMakeFiles/OpenImageIO_Util.dir/farmhash.cpp.o -c /home/why/SLAM_WS/Kidnap/src/oiio/src/libutil/farmhash.cpp [ 2%] Building CXX object src/libutil/CMakeFiles/OpenImageIO_Util.dir/filter.cpp.o cd /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/src/libutil && /usr/bin/c++ -DOpenImageIO_Util_EXPORTS -DUSE_FREETYPE -DUSE_JPEG_TURBO=1 -DUSE_OPENCV -DUSE_OPENEXR_VERSION2=1 -DSTDC_CONSTANT_MACROS -DSTDC_LIMIT_MACROS -I/usr/include/x86_64-linux-gnu -I/usr/include/OpenEXR -isystem /usr/local/include -I/home/why/SLAM_WS/Kidnap/src/oiio/src/include -I/home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/include/OpenImageIO -std=c++11 -O3 -DNDEBUG -fPIC -Wall -Werror -fno-math-errno -Wno-error=unused-local-typedefs -Wno-unused-local-typedefs -Wno-unused-result -Wno-error=misleading-indentation -std=c++11 -UUSE_FIELD3D -o CMakeFiles/OpenImageIO_Util.dir/filter.cpp.o -c /home/why/SLAM_WS/Kidnap/src/oiio/src/libutil/filter.cpp [ 3%] Building CXX object src/libutil/CMakeFiles/OpenImageIO_Util.dir/hashes.cpp.o cd /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/src/libutil && /usr/bin/c++ -DOpenImageIO_Util_EXPORTS -DUSE_FREETYPE -DUSE_JPEG_TURBO=1 -DUSE_OPENCV -DUSE_OPENEXR_VERSION2=1 -DSTDC_CONSTANT_MACROS -DSTDC_LIMIT_MACROS -I/usr/include/x86_64-linux-gnu -I/usr/include/OpenEXR -isystem /usr/local/include -I/home/why/SLAM_WS/Kidnap/src/oiio/src/include -I/home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/include/OpenImageIO -std=c++11 -O3 -DNDEBUG -fPIC -Wall -Werror -fno-math-errno -Wno-error=unused-local-typedefs -Wno-unused-local-typedefs -Wno-unused-result -Wno-error=misleading-indentation -std=c++11 -UUSE_FIELD3D -o CMakeFiles/OpenImageIO_Util.dir/hashes.cpp.o -c /home/why/SLAM_WS/Kidnap/src/oiio/src/libutil/hashes.cpp [ 3%] Building CXX object src/libutil/CMakeFiles/OpenImageIO_Util.dir/paramlist.cpp.o cd /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/src/libutil && /usr/bin/c++ -DOpenImageIO_Util_EXPORTS -DUSE_FREETYPE -DUSE_JPEG_TURBO=1 -DUSE_OPENCV -DUSE_OPENEXR_VERSION2=1 -DSTDC_CONSTANT_MACROS -DSTDC_LIMIT_MACROS -I/usr/include/x86_64-linux-gnu -I/usr/include/OpenEXR -isystem /usr/local/include -I/home/why/SLAM_WS/Kidnap/src/oiio/src/include -I/home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/include/OpenImageIO -std=c++11 -O3 -DNDEBUG -fPIC -Wall -Werror -fno-math-errno -Wno-error=unused-local-typedefs -Wno-unused-local-typedefs -Wno-unused-result -Wno-error=misleading-indentation -std=c++11 -UUSE_FIELD3D -o CMakeFiles/OpenImageIO_Util.dir/paramlist.cpp.o -c /home/why/SLAM_WS/Kidnap/src/oiio/src/libutil/paramlist.cpp [ 4%] Building CXX object src/libutil/CMakeFiles/OpenImageIO_Util.dir/plugin.cpp.o cd /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/src/libutil && /usr/bin/c++ -DOpenImageIO_Util_EXPORTS -DUSE_FREETYPE -DUSE_JPEG_TURBO=1 -DUSE_OPENCV -DUSE_OPENEXR_VERSION2=1 -DSTDC_CONSTANT_MACROS -DSTDC_LIMIT_MACROS -I/usr/include/x86_64-linux-gnu -I/usr/include/OpenEXR -isystem /usr/local/include -I/home/why/SLAM_WS/Kidnap/src/oiio/src/include -I/home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/include/OpenImageIO -std=c++11 -O3 -DNDEBUG -fPIC -Wall -Werror -fno-math-errno -Wno-error=unused-local-typedefs -Wno-unused-local-typedefs -Wno-unused-result -Wno-error=misleading-indentation -std=c++11 -UUSE_FIELD3D -o CMakeFiles/OpenImageIO_Util.dir/plugin.cpp.o -c /home/why/SLAM_WS/Kidnap/src/oiio/src/libutil/plugin.cpp [ 4%] Building CXX object src/libutil/CMakeFiles/OpenImageIO_Util.dir/SHA1.cpp.o cd /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/src/libutil && /usr/bin/c++ -DOpenImageIO_Util_EXPORTS -DUSE_FREETYPE -DUSE_JPEG_TURBO=1 -DUSE_OPENCV -DUSE_OPENEXR_VERSION2=1 -DSTDC_CONSTANT_MACROS -DSTDC_LIMIT_MACROS -I/usr/include/x86_64-linux-gnu -I/usr/include/OpenEXR -isystem /usr/local/include -I/home/why/SLAM_WS/Kidnap/src/oiio/src/include -I/home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/include/OpenImageIO -std=c++11 -O3 -DNDEBUG -fPIC -Wall -Werror -fno-math-errno -Wno-error=unused-local-typedefs -Wno-unused-local-typedefs -Wno-unused-result -Wno-error=misleading-indentation -std=c++11 -UUSE_FIELD3D -o CMakeFiles/OpenImageIO_Util.dir/SHA1.cpp.o -c /home/why/SLAM_WS/Kidnap/src/oiio/src/libutil/SHA1.cpp [ 5%] Building CXX object src/libutil/CMakeFiles/OpenImageIO_Util.dir/strutil.cpp.o cd /home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/src/libutil && /usr/bin/c++ -DOpenImageIO_Util_EXPORTS -DUSE_FREETYPE -DUSE_JPEG_TURBO=1 -DUSE_OPENCV -DUSE_OPENEXR_VERSION2=1 -DSTDC_CONSTANT_MACROS -DSTDC_LIMIT_MACROS -I/usr/include/x86_64-linux-gnu -I/usr/include/OpenEXR -isystem /usr/local/include -I/home/why/SLAM_WS/Kidnap/src/oiio/src/include -I/home/why/SLAM_WS/Kidnap/src/oiio/build/linux64/include/OpenImageIO -std=c++11 -O3 -DNDEBUG -fPIC -Wall -Werror -fno-math-errno -Wno-error=unused-local-typedefs -Wno-unused-local-typedefs -Wno-unused-result -Wno-error=misleading-indentation -std=c++11 -UUSE_FIELD3D -o CMakeFiles/OpenImageIO_Util.dir/strutil.cpp.o -c /home/why/SLAM_WS/Kidnap/src/oiio/src/libutil/strutil.cpp src/libutil/CMakeFiles/OpenImageIO_Util.dir/build.make:278: recipe for target 'src/libutil/CMakeFiles/OpenImageIO_Util.dir/strutil.cpp.o' failed make[3]: Leaving directory '/home/why/SLAM_WS/Kidnap/src/oiio/build/linux64' CMakeFiles/Makefile2:1266: recipe for target 'src/libutil/CMakeFiles/OpenImageIO_Util.dir/all' failed make[2]: Leaving directory '/home/why/SLAM_WS/Kidnap/src/oiio/build/linux64' Makefile:162: recipe for target 'all' failed make[1]: Leaving directory '/home/why/SLAM_WS/Kidnap/src/oiio/build/linux64' Makefile:352: recipe for target 'cmake' failed
CMakeCache.txt
file from your build directory. project (OpenImageIO)SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
Release version of the library
set (OIIO_VERSION_MAJOR 1) set (OIIO_VERSION_MINOR 7) set (OIIO_VERSION_PATCH 6) set (OIIO_VERSION_RELEASE_TYPE "RC1") # "dev", "betaX", "RCY", ""
cmake_minimum_required (VERSION 2.6) if (NOT CMAKE_VERSION VERSION_LESS 2.8.4) cmake_policy (SET CMP0017 NEW) endif () if (NOT CMAKE_VERSION VERSION_LESS 3.0) cmake_policy (SET CMP0025 NEW) # Detect AppleClang for new CMake endif () if (NOT CMAKE_VERSION VERSION_LESS 3.2.2) cmake_policy (SET CMP0042 OLD) cmake_policy (SET CMP0046 OLD) endif () set (CMAKE_ALLOW_LOOSE_LOOP_CONSTRUCTS TRUE)
N.B./FIXME - after CMake 3.0 is our minimum, we should change many of the
add_definitions to add_compile_options. In newer cmake versions, the
former is designated for definitions (-Dblah) and the latter is for
compile flags (-Wno-foo).
if (VERBOSE) message (STATUS "Project source dir = ${PROJECT_SOURCE_DIR}") endif () message (STATUS "Project build dir = ${CMAKE_BINARY_DIR}")
if ("${PROJECT_SOURCE_DIR}" STREQUAL "${CMAKE_BINARY_DIR}") message (FATAL_ERROR "Not allowed to run in-source build!") endif ()
if (NOT CMAKE_BUILD_TYPE) set (CMAKE_BUILD_TYPE "Release") endif () if (CMAKE_BUILD_TYPE STREQUAL "Debug") set (DEBUGMODE ON) endif () if (CMAKE_BUILD_TYPE STREQUAL "RelWithDebInfo")
cmake bug workaround -- on some platforms, cmake doesn't set
endif ()
option (CMAKE_USE_FOLDERS "Use the FOLDER target property to organize targets into folders." ON) mark_as_advanced (CMAKE_USE_FOLDERS) if (CMAKE_USE_FOLDERS) set_property (GLOBAL PROPERTY USE_FOLDERS ON) endif ()
turn on more detailed warnings and consider warnings as errors
set (STOP_ON_WARNING ON CACHE BOOL "Stop building if there are any compiler warnings") if (NOT MSVC) add_definitions ("-Wall") if (STOP_ON_WARNING) add_definitions ("-Werror") endif () endif ()
message (STATUS "CMAKE_CXX_COMPILER is ${CMAKE_CXX_COMPILER}") message (STATUS "CMAKE_CXX_COMPILER_ID is ${CMAKE_CXX_COMPILER_ID}")
Figure out which compiler we're using
if (CMAKE_COMPILER_IS_GNUCC) execute_process (COMMAND ${CMAKE_CXX_COMPILER} -dumpversion OUTPUT_VARIABLE GCC_VERSION OUTPUT_STRIP_TRAILING_WHITESPACE) if (VERBOSE) message (STATUS "Using gcc ${GCC_VERSION} as the compiler") endif () endif ()
Figure out which compiler we're using, for tricky cases
if (CMAKE_CXX_COMPILER_ID MATCHES "Clang" OR CMAKE_CXX_COMPILER MATCHES "[Cc]lang")
If using any flavor of clang, set CMAKE_COMPILER_IS_CLANG. If it's
elseif (CMAKE_CXX_COMPILER_ID MATCHES "Intel") set (CMAKE_COMPILER_IS_INTEL 1) if (VERBOSE) message (STATUS "Using Intel as the compiler") endif () endif ()
Options common to gcc and clang
if (CMAKE_COMPILER_IS_GNUCC OR CMAKE_COMPILER_IS_CLANG)
CMake doesn't automatically know what do do with
endif ()
Clang-specific options
if (CMAKE_COMPILER_IS_CLANG OR CMAKE_COMPILER_IS_APPLECLANG)
Disable some warnings for Clang, for some things that are too awkward
endif ()
gcc specific options
if (CMAKE_COMPILER_IS_GNUCC AND NOT (CMAKE_COMPILER_IS_CLANG OR CMAKE_COMPILER_IS_APPLECLANG)) if (NOT ${GCC_VERSION} VERSION_LESS 4.8)
suppress a warning that Boost::Python hits in g++ 4.8
endif ()
set (VERBOSE OFF CACHE BOOL "Print lots of messages while compiling") set (EMBEDPLUGINS ON CACHE BOOL "Embed format plugins in libOpenImageIO") set (OIIO_BUILD_TOOLS ON CACHE BOOL "Build the command-line tools") set (OIIO_BUILD_TESTS ON CACHE BOOL "Build the unit tests") set (BUILDSTATIC OFF CACHE BOOL "Build static library instead of shared") set (LINKSTATIC OFF CACHE BOOL "Link with static external libraries when possible") set (HIDE_SYMBOLS OFF CACHE BOOL "Hide symbols not in the public API") set (USE_OPENGL ON CACHE BOOL "Include OpenGL support") set (USE_QT ON CACHE BOOL "Include Qt support") set (FORCE_OPENGL_1 OFF CACHE BOOL "Force iv to use OpenGL's fixed pipeline") set (USE_PYTHON ON CACHE BOOL "Build the Python bindings") set (USE_PYTHON3 OFF CACHE BOOL "Build the Python3 bindings") set (PYTHON_VERSION 2.6) set (PYTHON3_VERSION 3.2) set (PYLIB_INCLUDE_SONAME OFF CACHE BOOL "If ON, soname/soversion will be set for Python module library") set (PYLIB_LIB_PREFIX OFF CACHE BOOL "If ON, prefix the Python module with 'lib'") set (USE_FIELD3D ON CACHE BOOL "Use Field3D if found") set (USE_FFMPEG ON CACHE BOOL "Use FFmpeg if found") set (JPEG_PATH "" CACHE STRING "Custom JPEG path") set (USE_JPEGTURBO ON CACHE BOOL "Use JPEG-Turbo if found") set (JPEGTURBO_PATH "" CACHE STRING "Custom JPEG-Turbo path") set (USE_OPENJPEG ON CACHE BOOL "Use OpenJpeg if found") set (USE_OCIO ON CACHE BOOL "Use OpenColorIO for color management if found") set (USE_OPENCV ON CACHE BOOL "Use OpenCV if found") set (USE_OPENSSL OFF CACHE BOOL "Use OpenSSL if found (for faster SHA-1)") set (USE_FREETYPE ON CACHE BOOL "Use Freetype if found") set (USE_GIF ON CACHE BOOL "Use GIF if found") set (USE_PTEX ON CACHE BOOL "Use PTex if found") set (USE_LIBRAW ON CACHE BOOL "Use LibRaw if found") set (LIBRAW_PATH "" CACHE STRING "Custom LibRaw path") set (NOTHREADS OFF CACHE BOOL "Compile with no threads or locking") set (OIIO_THREAD_ALLOW_DCLP ON CACHE BOOL "OIIO threads may use DCLP for speed") set (USE_NUKE ON CACHE BOOL "Build Nuke plugins, if Nuke is found") set (Nuke_ROOT "" CACHE STRING "Where to find Nuke installation") set (NUKE_VERSION 7.0) set (USE_EXTERNAL_PUGIXML OFF CACHE BOOL "Use an externally built shared library version of the pugixml library") set (PUGIXML_HOME "" CACHE STRING "Hint about where to find external PugiXML library")
set (SOVERSION ${OIIO_VERSION_MAJOR}.${OIIO_VERSION_MINOR} CACHE STRING "Set the SO version in the SO name of the output library") set (BUILD_OIIOUTIL_ONLY OFF CACHE BOOL "If ON, will build only libOpenImageIO_Util") set (USE_CPP11 ON CACHE BOOL "Compile in C++11 mode") set (USE_CPP14 OFF CACHE BOOL "Compile in C++14 mode") set (USE_LIBCPLUSPLUS OFF CACHE BOOL "Compile with clang libc++") set (EXTRA_CPP_ARGS "" CACHE STRING "Extra C++ command line definitions") set (USE_SIMD "" CACHE STRING "Use SIMD directives (0, sse2, sse3, ssse3, sse4.1, sse4.2, avx, avx2, avx512f, f16c)") set (USE_CCACHE ON CACHE BOOL "Use ccache if found") set (CODECOV OFF CACHE BOOL "Build code coverage tests")
Use ccache if found
find_program (CCACHE_FOUND ccache) if (CCACHE_FOUND AND USE_CCACHE) if (CMAKE_COMPILER_IS_CLANG AND USE_QT AND (NOT DEFINED ENV{CCACHE_CPP2})) message (STATUS "Ignoring ccache because clang + Qt + env CCACHE_CPP2 is not set") else () set_property (GLOBAL PROPERTY RULE_LAUNCH_COMPILE ccache) set_property (GLOBAL PROPERTY RULE_LAUNCH_LINK ccache) endif () endif ()
if (NOTHREADS) message (STATUS "NO THREADS!") add_definitions ("-DNOTHREADS=1") else () if (VERBOSE) message (STATUS "Building with thread support") if (NOT OIIO_THREAD_ALLOW_DCLP) add_definitions ("-DOIIO_THREAD_ALLOW_DCLP=0") endif () endif () endif ()
if (EXTRA_CPP_ARGS) message (STATUS "Extra C++ args: ${EXTRA_CPP_ARGS}") add_definitions ("${EXTRA_CPP_ARGS}") endif()
if (CMAKE_COMPILER_IS_GNUCC OR CMAKE_COMPILER_IS_CLANG OR CMAKE_COMPILER_IS_INTEL) if (USE_CPP11 OR USE_CPP14) if (USE_CPP14) message (STATUS "Building for C++14") add_definitions ("-std=c++14") elseif (USE_CPP11) message (STATUS "Building for C++11") add_definitions ("-std=c++11") endif () if (CMAKE_COMPILER_IS_CLANG)
C++ >= 11 doesn't like 'register' keyword, which is in Qt headers
endif ()
if (USE_LIBCPLUSPLUS AND CMAKE_COMPILER_IS_CLANG) message (STATUS "Using libc++") set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -stdlib=libc++") endif ()
set (USE_fPIC OFF CACHE BOOL "Build with -fPIC") if (USE_fPIC) add_definitions ("-fPIC") endif ()
Options common to gcc and clang
if (CODECOV AND (CMAKE_COMPILER_IS_GNUCC OR CMAKE_COMPILER_IS_CLANG)) message (STATUS "Compiling for code coverage analysis") add_definitions ("-ftest-coverage -fprofile-arcs -O0 -DOIIO_CODE_COVERAGE=1") set (CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -ftest-coverage -fprofile-arcs") set (CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -ftest-coverage -fprofile-arcs") set (CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -ftest-coverage -fprofile-arcs") endif ()
if (DEFINED ENV{TRAVIS} OR DEFINED ENV{APPVEYOR} OR DEFINED ENV{CI}) add_definitions ("-DOIIO_CI=1") endif ()
if (NOT USE_SIMD STREQUAL "") message (STATUS "Compiling with SIMD level ${USE_SIMD}") if (USE_SIMD STREQUAL "0") add_definitions ("-DOIIO_NO_SSE=1") else () string (REPLACE "," ";" SIMD_FEATURE_LIST ${USE_SIMD}) foreach (feature ${SIMD_FEATURE_LIST}) if (VERBOSE) message (STATUS "SIMD feature: ${feature}") endif () if (MSVC OR CMAKE_COMPILER_IS_INTEL) add_definitions ("/arch:${feature}") else () add_definitions ("-m${feature}") endif () if (feature STREQUAL "fma" AND (CMAKE_COMPILER_IS_GNUCC OR CMAKE_COMPILER_IS_CLANG))
If fma is requested, for numerical accuracy sake, turn it
endif ()
Set the default namespace
if (NOT OIIO_NAMESPACE) set (OIIONAMESPACE OpenImageIO CACHE STRING "Specify the master OpenImageIO C++ namespace: Options include OpenImageIO OpenImageIO etc."
FORCE)
endif ()
message(STATUS "Setting Namespace to: ${OIIO_NAMESPACE}")
if (BUILDSTATIC) message (STATUS "Building static libraries") add_definitions(-DOIIO_STATIC_BUILD=1) if (${CMAKE_SYSTEM_NAME} STREQUAL "Linux")
On Linux, the lack of -fPIC when building static libraries seems
endif()
Use .a files if LINKSTATIC is enabled
if (LINKSTATIC) set (_orig_link_suffixes ${CMAKE_FIND_LIBRARY_SUFFIXES}) message (STATUS "Statically linking external libraries") if (WIN32) set (CMAKE_FIND_LIBRARY_SUFFIXES .lib .a ${CMAKE_FIND_LIBRARY_SUFFIXES}) else ()
set (CMAKE_FIND_LIBRARY_SUFFIXES .a)
endif ()
set (CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/src/cmake/modules" "${PROJECT_SOURCE_DIR}/src/cmake")
include (util_macros) include (oiio_macros) include (platform) include (externalpackages)
include_directories ( "${CMAKE_SOURCE_DIR}/src/include" "${CMAKE_BINARY_DIR}/include/OpenImageIO" )
###########################################################################
Paths for install tree customization. Note that relative paths are relative
to CMAKE_INSTALL_PREFIX.
set (DEFAULT_BIN_INSTALL_DIR "bin") set (DEFAULT_LIB_INSTALL_DIR "lib") set (DEFAULT_INCLUDE_INSTALL_DIR "include/OpenImageIO") if (UNIX AND NOT SELF_CONTAINED_INSTALL_TREE)
Try to be well-behaved and install into reasonable places according to
else ()
Here is the "self-contained install tree" case: the expectation here is
endif () if (EXEC_INSTALL_PREFIX)
Tack on an extra prefix to support multi-arch builds.
endif ()
Set up cmake cache variables corresponding to the defaults deduced above, so
that the user can override them as desired:
set (BIN_INSTALL_DIR ${DEFAULT_BIN_INSTALL_DIR} CACHE STRING "Install location for binaries (relative to CMAKE_INSTALL_PREFIX or absolute)") set (LIB_INSTALL_DIR ${DEFAULT_LIB_INSTALL_DIR} CACHE STRING "Install location for libraries (relative to CMAKE_INSTALL_PREFIX or absolute)") set (PYLIB_INSTALL_DIR ${DEFAULT_PYLIB_INSTALL_DIR} CACHE STRING "Install location for python libraries (relative to CMAKE_INSTALL_PREFIX or absolute)") set (PYLIB3_INSTALL_DIR ${DEFAULT_PYLIB3_INSTALL_DIR} CACHE STRING "Install location for python3 libraries (relative to CMAKE_INSTALL_PREFIX or absolute)") set (INCLUDE_INSTALL_DIR ${DEFAULT_INCLUDE_INSTALL_DIR} CACHE STRING "Install location of header files (relative to CMAKE_INSTALL_PREFIX or absolute)") set (DOC_INSTALL_DIR ${DEFAULT_DOC_INSTALL_DIR} CACHE STRING "Install location for documentation (relative to CMAKE_INSTALL_PREFIX or absolute)") set (FONTS_INSTALL_DIR ${DEFAULT_FONTS_INSTALL_DIR} CACHE STRING "Install location for fonts (relative to CMAKE_INSTALL_PREFIX or absolute)") if (UNIX) set (MAN_INSTALL_DIR ${DEFAULT_MAN_INSTALL_DIR} CACHE STRING "Install location for manual pages (relative to CMAKE_INSTALL_PREFIX or absolute)") endif() set (PLUGIN_SEARCH_PATH "" CACHE STRING "Default plugin search path")
set (INSTALL_DOCS ON CACHE BOOL "Install documentation") set (INSTALL_FONTS ON CACHE BOOL "Install default fonts")
###########################################################################
Rpath handling.
if (CMAKE_SKIP_RPATH)
We need to disallow the user from truly setting CMAKE_SKIP_RPATH, since
else () set (CMAKE_INSTALL_RPATH "${LIB_INSTALL_DIR}") if (NOT IS_ABSOLUTE ${CMAKE_INSTALL_RPATH}) set (CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/${LIB_INSTALL_DIR}") endif () set (CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE) endif ()
if (MSVC) add_definitions (/W1) add_definitions (-D_CRT_SECURE_NO_DEPRECATE) add_definitions (-D_CRT_SECURE_NO_WARNINGS) add_definitions (-D_CRT_NONSTDC_NO_WARNINGS) add_definitions (-D_SCL_SECURE_NO_WARNINGS) add_definitions (-DJAS_WIN_MSVC_BUILD) add_definitions (-DOPENEXR_DLL) if (LINKSTATIC) add_definitions (-DBoost_USE_STATIC_LIBS=1) else () add_definitions (-DBOOST_ALL_DYN_LINK) endif () endif (MSVC)
We want CTest for testing
N.B. This needs to be added before any of the subdirectories, or
their add_test commands will not register.
include (CTest)
Tell CMake to process the sub-directories
add_subdirectory (src/libutil)
Add IO plugin directories -- if we are embedding plugins, we need to visit
these directories BEFORE the OpenImageIO target is established (in
src/libOpenImageIO). For each plugin, we append to the lists of source
files, format libs, include directories, and definitions, all of which
will be used by src/libOpenImageIO.
set (libOpenImageIO_srcs "") set (format_plugin_libs "") set (format_plugin_include_dirs "") set (format_plugin_definitions "") file (GLOB all_format_plugin_dirs src/*.imageio) if ("${OIIO_SITE}" STREQUAL "SPI")
SPI only -- because of a workaround for a very weird linkage issue
endif () if (EMBEDPLUGINS AND NOT BUILD_OIIOUTIL_ONLY) foreach (plugin_dir ${all_format_plugin_dirs}) add_subdirectory (${plugin_dir}) endforeach () endif ()
if (NOT BUILD_OIIOUTIL_ONLY) add_subdirectory (src/libOpenImageIO) endif ()
if (OIIO_BUILD_TOOLS AND NOT BUILD_OIIOUTIL_ONLY) add_subdirectory (src/iconvert) add_subdirectory (src/idiff) add_subdirectory (src/igrep) add_subdirectory (src/iinfo) add_subdirectory (src/maketx) add_subdirectory (src/oiiotool) add_subdirectory (src/testtex) add_subdirectory (src/iv) endif ()
Add IO plugin directories -- if we are not embedding plugins, we need to
do it AFTER the OpenImageIO target is established (in src/libOpenImageIO),
since each plugin needs libOpenImageIO to be a dependency.
if (NOT EMBEDPLUGINS AND NOT BUILD_OIIOUTIL_ONLY) foreach (plugin_dir ${all_format_plugin_dirs}) add_subdirectory (${plugin_dir}) endforeach () endif ()
if (USE_PYTHON AND boost_PYTHON_FOUND AND NOT BUILD_OIIOUTIL_ONLY) add_subdirectory (src/python) endif () if (USE_PYTHON3 AND boost_PYTHON_FOUND AND NOT BUILD_OIIOUTIL_ONLY)
build the python3 module in a different binary directory since it will
endif ()
add_subdirectory (src/include) add_subdirectory (src/doc) add_subdirectory (src/fonts) add_subdirectory (src/nuke)
#########################################################################
Testing
#
Just call oiio_add_tests(testname...) for each test. Additional
optional arguments include:
FOUNDVAR specifies the name of a CMAKE variable; if not defined,
the test will not be added for 'make test' (helpful
for excluding tests for libraries not found).
IMAGEDIR specifies a directory for test images, one level higher
than where the oiio top level source lives -- a
message will be printed if not found.
URL URL where the test images can be found, will be
incorporated into the error message if the test
image directory is not found.
LABEL If set to "broken", will designate the test as one
that is known to be broken, so will only be run
for "make testall", but not "make test".
#
Make a build/platform/testsuite directory, and copy the master runtest.py
there. The rest is up to the tests themselves.
file (MAKE_DIRECTORY "${CMAKE_BINARY_DIR}/testsuite") add_custom_command (OUTPUT "${CMAKE_BINARY_DIR}/testsuite/runtest.py" COMMAND ${CMAKE_COMMAND} -E copy_if_different "${CMAKE_SOURCE_DIR}/testsuite/runtest.py" "${CMAKE_BINARY_DIR}/testsuite/runtest.py" MAIN_DEPENDENCY "${CMAKE_SOURCE_DIR}/testsuite/runtest.py") add_custom_target ( CopyFiles ALL DEPENDS "${CMAKE_BINARY_DIR}/testsuite/runtest.py" )
Basic tests that apply even to continuous integration tests:
oiio_add_tests ( gpsread misnamed-file nonwhole-tiles oiiotool oiiotool-composite oiiotool-deep oiiotool-fixnan oiiotool-pattern oiiotool-readerror oiiotool-subimage oiiotool-text maketx oiiotool-maketx dither dpx ico iff png psd rla sgi python-typedesc python-imagespec python-roi python-deep python-imageinput python-imageoutput python-imagebuf python-imagebufalgo texture-interp-bicubic texture-blurtube texture-crop texture-cropover texture-derivs texture-fill texture-filtersize texture-flipt texture-gray texture-mip-nomip texture-mip-trilinear texture-overscan texture-pointsample texture-uint8 texture-width0blur texture-fat texture-skinny texture-wrapfill texture-missing texture-res texture-udim texture-udim2 )
Advanced tests that are done by hand and for releases:
FIXME -- at some point, try to fix these or provide new ref images
if (NOT DEFINED ENV{TRAVIS}) oiio_add_tests ( texture-half texture-uint16 texture-interp-bilinear texture-interp-closest texture-mip-onelevel texture-icwrite ) endif ()
List testsuites which need special external reference images from the web
here:
oiio_add_tests (bmp IMAGEDIR bmpsuite URL http://entropymine.com/jason/bmpsuite/bmpsuite.zip)
oiio_add_tests (tiff-suite tiff-depths tiff-misc IMAGEDIR libtiffpic URL http://www.remotesensing.org/libtiff/images.html)
oiio_add_tests (openexr-suite openexr-multires openexr-chroma openexr-v2 perchannel IMAGEDIR openexr-images URL http://www.openexr.com/downloads.html)
oiio_add_tests (gif FOUNDVAR GIF_FOUND IMAGEDIR oiio-images URL "Recent checkout of oiio-images")
oiio_add_tests (jpeg2000 FOUNDVAR OPENJPEG_FOUND IMAGEDIR j2kp4files_v1_5 URL http://www.itu.int/net/ITU-T/sigdb/speimage/ImageForm-s.aspx?val=10100803)
oiio_add_tests (pnm IMAGEDIR oiio-images/pnm URL "Recent checkout of oiio-images")
oiio_add_tests (targa-tgautils IMAGEDIR TGAUTILS URL http://tgautils.inequation.org/)
oiio_add_tests (fits IMAGEDIR fits-images URL http://www.cv.nrao.edu/fits/data/tests/)
oiio_add_tests (webp FOUNDVAR WEBP_FOUND IMAGEDIR webp-images URL http://code.google.com/speed/webp/gallery.html)
oiio_add_tests (ptex FOUNDVAR PTEX_FOUND)
if (NOT DEFINED ENV{TRAVIS})
oiio_add_tests (texture-field3d field3d FOUNDVAR FIELD3D_FOUND)
endif ()
if (SPI_TESTS) oiio_add_tests (oiiotool-spi FOUNDVAR SPI_TESTS IMAGEDIR spi-oiio-tests URL "noplace -- it's SPI specific tests") endif ()
#########################################################################
Packaging
set (CPACK_PACKAGE_VERSION_MAJOR ${OIIO_VERSION_MAJOR}) set (CPACK_PACKAGE_VERSION_MINOR ${OIIO_VERSION_MINOR}) set (CPACK_PACKAGE_VERSION_PATCH ${OIIO_VERSION_PATCH})
"Vendor" is only used in copyright notices, so we use the same thing that
the rest of the copyright notices say.
set (CPACK_PACKAGE_VENDOR "Larry Gritz et al.") set (CPACK_PACKAGE_DESCRIPTION_SUMMARY "OpenImageIO is an open source library for reading and writing image file formats, a nice format-agnostic image viewer, and other image-related classes and utilities.") set (CPACK_PACKAGE_DESCRIPTION_FILE "${PROJECT_SOURCE_DIR}/src/doc/Description.txt") set (CPACK_PACKAGE_FILE_NAME OpenImageIO-${OIIO_VERSION_MAJOR}.${OIIO_VERSION_MINOR}.${OIIO_VERSION_PATCH}-${platform})
SET (CPACK_PACKAGE_INSTALL_DIRECTORY "${PROJECT_SOURCE_DIR}")
file (MAKE_DIRECTORY "${CMAKE_BINARY_DIR}/cpack") file (COPY "${PROJECT_SOURCE_DIR}/LICENSE" DESTINATION "${CMAKE_BINARY_DIR}/cpack") file (RENAME "${CMAKE_BINARY_DIR}/cpack/LICENSE" "${CMAKE_BINARY_DIR}/cpack/License.txt") set (CPACK_RESOURCE_FILE_LICENSE "${CMAKE_BINARY_DIR}/cpack/License.txt") file (COPY "${PROJECT_SOURCE_DIR}/README.md" DESTINATION "${CMAKE_BINARY_DIR}/cpack") file (RENAME "${CMAKE_BINARY_DIR}/cpack/README.md" "${CMAKE_BINARY_DIR}/cpack/Readme.md") set (CPACK_RESOURCE_FILE_README "${CMAKE_BINARY_DIR}/cpack/Readme.md") set (CPACK_RESOURCE_FILE_WELCOME "${PROJECT_SOURCE_DIR}/src/doc/Welcome.txt")
SET (CPACK_STRIP_FILES Do we need this?)
if (${CMAKE_SYSTEM_NAME} STREQUAL "Linux") set (CPACK_GENERATOR "TGZ;STGZ;RPM;DEB") set (CPACK_SOURCE_GENERATOR "TGZ") endif () if (APPLE) set (CPACK_GENERATOR "TGZ;STGZ;PackageMaker") set (CPACK_SOURCE_GENERATOR "TGZ") endif () if (WIN32) set (CPACK_GENERATOR "NSIS") set(CPACK_PACKAGE_EXECUTABLES "iv" "iv - Image Viewer")
set(CPACK_CREATE_DESCTOP_LINKS "iv" "iv - Image Viewer")
endif () set (CPACK_SOURCE_PACKAGE_FILE_NAME OpenImageIO-${OIIO_VERSION_MAJOR}.${OIIO_VERSION_MINOR}.${OIIO_VERSION_PATCH}-source)
set (CPACK_SOURCE_STRIP_FILES Do we need this?)
set (CPACK_SOURCE_IGNORE_FILES ".*~") set (CPACK_COMPONENT_UNSPECIFIED_HIDDEN TRUE) set (CPACK_COMPONENT_UNSPECIFIED_REQUIRED TRUE) set (CPACK_COMPONENTS_ALL user developer documentation Unspecified) set (CPACK_COMPONENT_USER_DISPLAY_NAME "Applications") set (CPACK_COMPONENT_DEVELOPER_DISPLAY_NAME "Developer files") set (CPACK_COMPONENT_DOCUMENTATION_DISPLAY_NAME "Documentation") set (CPACK_COMPONENT_USER_DESCRIPTION "Applications: iv, iinfo, iconvert, idiff, igrep, maketx and libraries") set (CPACK_COMPONENT_DEVELOPER_DESCRIPTION "Include files") set (CPACK_COMPONENT_DOCUMENTATION_DESCRIPTION "OpenImageIO documentation") set (CPACK_COMPONENT_DEVELOPER_DEPENDS user) include (CPack)
TODO: equivalents of the old:
* make doxygen
* BOOST_DYNAMIC
Do TIFF, JPEG, PNG actually look in external?
If you are pretty sure that you have identified a BUG in the OpenImageIO build scripts, please file a bug report issue.