TRIQS / triqs_0.x

DEPRECATED -- This is the repository of the older versions of TRIQS
Other
11 stars 9 forks source link

cmake fails on Weiss [HDF5 detection] #118

Closed tayral closed 11 years ago

tayral commented 11 years ago

Hi, Upon running cmake on Weiss (using usual script from the wiki: TRIQS#Installing_TRIQS) for branch 1.0, I am getting:

-- Installation directory is /home/ayral/Work/TRIQS/build/INSTALL_DIR
-- The C compiler identification is GNU
-- The CXX compiler identification is GNU
-- The Fortran compiler identification is GNU
-- Check for working C compiler: /usr/local/gcc-4.7.0/bin/gcc
-- Check for working C compiler: /usr/local/gcc-4.7.0/bin/gcc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working CXX compiler: /opt/openmpi.gnu/1.4.2/bin/mpic++
-- Check for working CXX compiler: /opt/openmpi.gnu/1.4.2/bin/mpic++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working Fortran compiler: /usr/local/gcc-4.7.0/bin/gfortran
-- Check for working Fortran compiler: /usr/local/gcc-4.7.0/bin/gfortran  -- works
-- Detecting Fortran compiler ABI info
-- Detecting Fortran compiler ABI info - done
-- Checking whether /usr/local/gcc-4.7.0/bin/gfortran supports Fortran 90
-- Checking whether /usr/local/gcc-4.7.0/bin/gfortran supports Fortran 90 -- yes
-- Compiler is gcc with version 4.7.0
-- DYNAMIC Built 
-- CMAKE_GENERATOR: Unix Makefiles
-- CMAKE_CL_64: 
-- CMAKE_SIZEOF_VOID_P: 8
-- CMAKE_GENERATOR: Unix Makefiles
-- CMAKE_CL_64: 
-- Build type: Release
-- Found MPI: /opt/openmpi.gnu/1.4.2/lib/libmpi_cxx.so
-- MPI compiler was /opt/openmpi.gnu/1.4.2/bin/mpic++
-- Found FFTW: /usr/lib64/libfftw3.so
CMake Error at /usr/share/cmake/Modules/FindHDF5.cmake:169 (message):
  "HL" is not a valid HDF5 component.
Call Stack (most recent call first):
  cmake/FindTRIQS_dep_libs.cmake:143 (find_package)
  CMakeLists.txt:37 (find_package)

-- Configuring incomplete, errors occurred!

Any idea how to fix this? Thanks, Thomas

parcollet commented 11 years ago

HL detects the High Level part of hdf5, from which I now use one or two functions. The pb comes from the fact that cmake on weiss is 2.8.2, which does not have HL detection, and on 12.04, mac it higher (2.8.7 on 12.04), which does have the HL detection and requires the HL flags... Can you try on weiss to remove HL in ./cmake/FindTRIQS_dep_libs.cmake:143:find_package(HDF5 REQUIRED C CXX HL ) What is are the libs detected then ? (the hdf5_hl is present on weiss, it isjust a pb of detection).

tayral commented 11 years ago

Hi, I've removed HL in ${SRC}/cmake/FindTRIQS_dep_libs.cmake:143:find_package(HDF5 REQUIRED C CXX HL )

The result is the same:

-- Installation directory is /home/ayral/Work/TRIQS/build/INSTALL_DIR
-- The C compiler identification is GNU
-- The CXX compiler identification is GNU
-- The Fortran compiler identification is GNU
-- Check for working C compiler: /usr/local/gcc-4.7.0/bin/gcc
-- Check for working C compiler: /usr/local/gcc-4.7.0/bin/gcc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working CXX compiler: /opt/openmpi.gnu/1.4.2/bin/mpic++
-- Check for working CXX compiler: /opt/openmpi.gnu/1.4.2/bin/mpic++ -- 
works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working Fortran compiler: /usr/local/gcc-4.7.0/bin/gfortran
-- Check for working Fortran compiler: 
/usr/local/gcc-4.7.0/bin/gfortran  -- works
-- Detecting Fortran compiler ABI info
-- Detecting Fortran compiler ABI info - done
-- Checking whether /usr/local/gcc-4.7.0/bin/gfortran supports Fortran 90
-- Checking whether /usr/local/gcc-4.7.0/bin/gfortran supports Fortran 
90 -- yes
-- Compiler is gcc with version 4.7.0
-- DYNAMIC Built
-- CMAKE_GENERATOR: Unix Makefiles
-- CMAKE_CL_64:
-- CMAKE_SIZEOF_VOID_P: 8
-- CMAKE_GENERATOR: Unix Makefiles
-- CMAKE_CL_64:
-- Build type: Release
-- Found MPI: /opt/openmpi.gnu/1.4.2/lib/libmpi_cxx.so
-- MPI compiler was /opt/openmpi.gnu/1.4.2/bin/mpic++
-- Found FFTW: /usr/lib64/libfftw3.so
CMake Error at /usr/share/cmake/Modules/FindHDF5.cmake:169 (message):
   "HL" is not a valid HDF5 component.
Call Stack (most recent call first):
   cmake/FindTRIQS_dep_libs.cmake:143 (find_package)
   CMakeLists.txt:37 (find_package)

-- Configuring incomplete, errors occurred!

It looks like cmake on Weiss is looking for HL even if TRIQS's cmake does not require HL any more...

Le 04/03/13 18:14, Olivier Parcollet a écrit :

HL detects the High Level part of hdf5, from which I now use one or two functions. The pb comes from the fact that cmake on weiss is 2.8.2, which does not have HL detection, and on 12.04, mac it higher (2.8.7 on 12.04), which does have the HL detection and requires the HL flags... Can you try on weiss to remove HL in ./cmake/FindTRIQS_dep_libs.cmake:143:find_package(HDF5 REQUIRED C CXX HL ) What is are the libs detected then ? (the hdf5_hl is present on weiss, it isjust a pb of detection).

— Reply to this email directly or view it on GitHub https://github.com/TRIQS/TRIQS/issues/118#issuecomment-14370980.

tayral commented 11 years ago

... in fact removing HL did the trick (I was cmake-ing the wrong source...).

There are warnings:

[100%] Building CXX object pytriqs/solvers/ctqmc_hyb/CMakeFiles/ctqmc_solver.dir/wrap_ctqmc_hyb_by_cython.cpp.o
/home/ayral/Work/TRIQS/build/pytriqs/solvers/ctqmc_hyb/wrap_ctqmc_hyb_by_cython.cpp:11540:1: warning: deprecated conversion from string constant to ‘char*’ [-Wwrite-strings]

and the following tests fail

The following tests FAILED:
      2 - det_manipc1 (OTHER_FAULT)
    120 - wien2k_convert (Failed)
    121 - sumklda_basic (Failed)

but otherwise it seems that removing HL does not hurt too much.

parcollet commented 11 years ago

120,121 is another issue. 2 : is due to a BUG in BLAS1 zdotc on Mac !! It does hurt, need to fix it in cmakelist

parcollet commented 11 years ago

Ok, fixed, I will commit later today with other changes.

parcollet commented 11 years ago

I added a fix in hdf5 detection. Pls recheck and close if ok.

tayral commented 11 years ago

Works now