Page 1 of 1

CMaking OME-Files C++

PostPosted: Fri Jan 13, 2017 3:40 pm
by yalexand
Dear All,

I need to work with OME.tiffs for our next C++ based project, so I was seduced by your advertising:
For developers
--------------

You can use OME-Files C++ to easily support OME-TIFF in your software.

However, when trying to CMake that "ome-files-cpp" source cloned from git, I'm getting lot of warnings and errors related to "boost" (pasted below).

What is exactly a relation between software at https://github.com/ome/ome-files-cpp and
stuff placed at http://downloads.openmicroscopy.org/ome-files-cpp/0.2.3/18/, which is partly software, partly binaries?

And, if I want to incorporate "OME-Files C++" into my project, what is the correct way of organizing all these multiple inter-dependent components in directory structure?
How "to easily support" it, other words? :)

I use Win7, CMake 3.7.1, Visual Studio 14 2015.

Thanks,
Y.

Performing Test OME_HAVE_SNPRINTF - Success
Failed to find libdl (missing: LibDl_INCLUDE_DIR)
CMake Warning at cmake/FindBoost.cmake:761 (message):
Imported targets not available for Boost version
Call Stack (most recent call first):
cmake/FindBoost.cmake:865 (_Boost_COMPONENT_DEPENDENCIES)
cmake/FindBoost.cmake:1454 (_Boost_MISSING_DEPENDENCIES)
cmake/BoostChecks.cmake:41 (find_package)
CMakeLists.txt:90 (include)
CMake Warning at cmake/FindBoost.cmake:761 (message):
Imported targets not available for Boost version
Call Stack (most recent call first):
cmake/FindBoost.cmake:865 (_Boost_COMPONENT_DEPENDENCIES)
cmake/FindBoost.cmake:1454 (_Boost_MISSING_DEPENDENCIES)
cmake/BoostChecks.cmake:41 (find_package)
CMakeLists.txt:90 (include)
CMake Warning at cmake/FindBoost.cmake:761 (message):
Imported targets not available for Boost version
Call Stack (most recent call first):
cmake/FindBoost.cmake:865 (_Boost_COMPONENT_DEPENDENCIES)
cmake/FindBoost.cmake:1454 (_Boost_MISSING_DEPENDENCIES)
cmake/BoostChecks.cmake:41 (find_package)
CMakeLists.txt:90 (include)
CMake Warning at cmake/FindBoost.cmake:761 (message):
Imported targets not available for Boost version
Call Stack (most recent call first):
cmake/FindBoost.cmake:865 (_Boost_COMPONENT_DEPENDENCIES)
cmake/FindBoost.cmake:1454 (_Boost_MISSING_DEPENDENCIES)
cmake/BoostChecks.cmake:41 (find_package)
CMakeLists.txt:90 (include)
CMake Warning at cmake/FindBoost.cmake:761 (message):
Imported targets not available for Boost version
Call Stack (most recent call first):
cmake/FindBoost.cmake:865 (_Boost_COMPONENT_DEPENDENCIES)
cmake/FindBoost.cmake:1454 (_Boost_MISSING_DEPENDENCIES)
cmake/BoostChecks.cmake:41 (find_package)
CMakeLists.txt:90 (include)
CMake Warning at cmake/FindBoost.cmake:761 (message):
Imported targets not available for Boost version
Call Stack (most recent call first):
cmake/FindBoost.cmake:865 (_Boost_COMPONENT_DEPENDENCIES)
cmake/FindBoost.cmake:1454 (_Boost_MISSING_DEPENDENCIES)
cmake/BoostChecks.cmake:41 (find_package)
CMakeLists.txt:90 (include)
CMake Warning at cmake/FindBoost.cmake:761 (message):
Imported targets not available for Boost version
Call Stack (most recent call first):
cmake/FindBoost.cmake:865 (_Boost_COMPONENT_DEPENDENCIES)
cmake/FindBoost.cmake:1454 (_Boost_MISSING_DEPENDENCIES)
cmake/BoostChecks.cmake:41 (find_package)
CMakeLists.txt:90 (include)
CMake Warning at cmake/FindBoost.cmake:761 (message):
Imported targets not available for Boost version
Call Stack (most recent call first):
cmake/FindBoost.cmake:865 (_Boost_COMPONENT_DEPENDENCIES)
cmake/FindBoost.cmake:1454 (_Boost_MISSING_DEPENDENCIES)
cmake/BoostChecks.cmake:41 (find_package)
CMakeLists.txt:90 (include)
CMake Warning at cmake/FindBoost.cmake:761 (message):
Imported targets not available for Boost version
Call Stack (most recent call first):
cmake/FindBoost.cmake:865 (_Boost_COMPONENT_DEPENDENCIES)
cmake/FindBoost.cmake:1454 (_Boost_MISSING_DEPENDENCIES)
cmake/BoostChecks.cmake:41 (find_package)
CMakeLists.txt:90 (include)
Looking for pthread.h
Looking for pthread.h - not found
Found Threads: TRUE
CMake Error at cmake/FindBoost.cmake:1812 (message):
Unable to find the requested Boost libraries.

Unable to find the Boost header files. Please set BOOST_ROOT to the root
directory containing Boost or BOOST_INCLUDEDIR to the directory containing
Boost's headers.
Call Stack (most recent call first):
cmake/BoostChecks.cmake:41 (find_package)
CMakeLists.txt:90 (include)
Performing Test OME_VARIANT_LIMIT
Performing Test OME_VARIANT_LIMIT - Failed
Performing Test OME_HAVE_REGEX
Performing Test OME_HAVE_REGEX - Success
Performing Test OME_HAVE_BOOST_THREAD
Performing Test OME_HAVE_BOOST_THREAD - Failed
CMake Error at cmake/ThreadChecks.cmake:90 (message):
No working thread or mutex implementation found
Call Stack (most recent call first):
CMakeLists.txt:92 (include)

Re: CMaking OME-Files C++

PostPosted: Sat Jan 14, 2017 9:06 am
by jmoore
The binaries under http://downloads.openmicroscopy.org/ome ... /0.2.3/18/ are the versions that we currently ship. You can certainly start off by trying those, but if you'd prefer to compile the binaries yourself, you should take a look at the https://github.com/ome/ome-cmake-superbuild repository and the related manual at https://www.openmicroscopy.org/site/support/ome-files-cpp/ome-cmake-superbuild/manual/html/index.html.

Cheers,
~Josh

Re: CMaking OME-Files C++

PostPosted: Sat Jan 14, 2017 11:15 am
by yalexand
Great many thanks Josh

So the "shipped" package is for immediate usage, presuming that everything is compatible and there is no need to build locally.

This is really "easy"!
Hope the presumption works..

Thanks again,
Yuriy