Hi,
It's been a long time since we last talked about the build process,
here's a couple of remarks.
- First: boost. A few months back we had to switch back to the 1.44
version, because we found that the 1.52 was buggy. I lost my entire day
trying to build OIIO using the 1.54 version: it can not link.
Using boost 1.54, OIIO includes some headers from chrono, needing to
link against librt, which we do not. Thing is, we don't include these
headers with boost 1.52. I'm not familiar with CMake, so I have no idea
why. They magically appear in cmake caches file for every single project.
I have no real issue using an older version of boost, like the 1.44, but
I'm every time i have to build OIIO, i'm asking myself if we could stop
using it: how hard could it be ? ( special quote for Top Gear fans :p)
- second topic: THIRD_PARTY_TOOLS_HOME. I modified the
external_packages.cmake file to look for libraries differently. Since a
"make install" command will install all files from a library (includes,
share, etc...) in a subfolder dedicated to the library, i find it better
to not split includes and librs like the automated external packages
build does.
This way, if you compile yourself the libraries you want to use, you can
directly call configure with a prefix parameter pointing to
"THIRD_PARTY_TOOLS_HOME/$lib_name/ " and use it in OIIO's build.
Here's the modification I made:
from
set (CMAKE_INCLUDE_PATH
"${THIRD_PARTY_TOOLS_HOME}/include/${_ext_dirname}" ${CMAKE_INCLUDE_PATH})
set (CMAKE_LIBRARY_PATH
"${THIRD_PARTY_TOOLS_HOME}/lib/${_ext_dirname}" ${CMAKE_LIBRARY_PATH})
to
set (CMAKE_INCLUDE_PATH
"${THIRD_PARTY_TOOLS_HOME}/${_ext_dirname}/include" ${CMAKE_INCLUDE_PATH})
set (CMAKE_LIBRARY_PATH
"${THIRD_PARTY_TOOLS_HOME}/${_ext_dirname}/lib" ${CMAKE_LIBRARY_PATH})
_______________________________________________
Oiio-dev mailing list
[email protected]
http://lists.openimageio.org/listinfo.cgi/oiio-dev-openimageio.org