Configuring IMP 2.2.1: HDF5 once found, twice not
Dear all,
I am building IMP by using a HDF5 installation in a non-standard location. When running cmake with the HDF5_* options, HDF5 is found when configuring some modules, but not found when configuring others.
I'm configuring IMP with:
$ cmake ../imp-2.2.1 \ -DCMAKE_INSTALL_PREFIX=/my/imp/prefix \ -DBOOST_ROOT=/my/boost/root \ -DHDF5_LIBRARIES=/my/hdf5/root/lib \ -DHDF5_INCLUDE_DIRS=/my/hdf5/root/include
And I get:
Configuring module parallel ... yes -- Running setup_swig_wrappers parallel -- Running IMP.parallel making all header -- Updating /my/imp/prefix/SRC/build/include/IMP/parallel.h HDF5 not found
and
Configuring module saxs ... yes -- Running setup_swig_wrappers saxs -- Running IMP.saxs making all header -- Updating /my/imp/prefix/SRC/build/include/IMP/saxs.h HDF5 not found
*but* I also get:
Configuring module misc ... yes -- [...] -- Found HDF5: /my/hdf5/root/lib -- [...]
I can overcome the problem by using the $CMAKE_INCLUDE_PATH and $CMAKE_LIBRARY_PATH environment variables instead. In this case HDF5 is found for all modules.
Still, I think this behaviour is quite confusing
(Problem already existed with IMP 2.2.0)
Cheers Frank
On 9/3/14, 11:31 AM, Frank Thommen wrote: > I am building IMP by using a HDF5 installation in a non-standard > location. When running cmake with the HDF5_* options, HDF5 is found > when configuring some modules, but not found when configuring others.
Are you sure HDF5 really isn't found? (If that were the case, any module that requires it would be disabled.) cmake checks to see if a pkgconfig package is available first before it looks for headers, and will complain if it doesn't find one. So you'll see it complain that "foo package not found" followed by "foo.h found in /include/path". I find this confusing but that's presumably a decision the cmake folks made at some point - not under our control.
Ben
On 09/03/2014 09:40 PM, Ben Webb wrote: > On 9/3/14, 11:31 AM, Frank Thommen wrote: >> I am building IMP by using a HDF5 installation in a non-standard >> location. When running cmake with the HDF5_* options, HDF5 is found >> when configuring some modules, but not found when configuring others. > > Are you sure HDF5 really isn't found? (If that were the case, any module > that requires it would be disabled.) cmake checks to see if a pkgconfig > package is available first before it looks for headers, and will > complain if it doesn't find one. So you'll see it complain that "foo > package not found" followed by "foo.h found in /include/path". I find > this confusing but that's presumably a decision the cmake folks made at > some point - not under our control.
Directly after the "HDF5 not found" error message, the configuration of the next module starts. There is no "found" message after that.
frank
participants (2)
-
Ben Webb
-
Frank Thommen