Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

building core with HDF5 with g++ 11.4.0 is broken #1003

Open
harvv opened this issue Oct 4, 2023 · 1 comment
Open

building core with HDF5 with g++ 11.4.0 is broken #1003

harvv opened this issue Oct 4, 2023 · 1 comment
Assignees

Comments

@harvv
Copy link

harvv commented Oct 4, 2023

1 - Detailed description of problem or enhancement

on Ubuntu 22.04, using gcc/g++ 11.4.0, there doesn't seem to be any combination of compilation flags to get sst-core's configure to recognize a valid libhdf5_cpp.
(version 13.0.0. of sstcore)

NOTE: THIS WORKS WITHOUT ISSUE ON Compiler Version : Apple clang version 14.0.0 (clang-1400.0.29.202)

2 - Describe how to reproduce the issue

i. Build the HDF5 library with --enable-cxx passed to configure. If using any version higher that hdf5 1.10, then also pass ----enable-deprecated-symbols and --with-default-api-version=v110
ii. make the newly build libhdf5 and libhdf5_cpp libraries discoverable (ldconfig, or other ways). Make sure that there are no other hdf5 being picked up
iii. try and configure sst-core 13.0.0 --with-hdf5=(path to built library)

Observe configure find the HDF5 includes and successfully open the hdf5 lib:
checking H5Cpp.h usability... yes
checking H5Cpp.h presence... yes
checking for H5Cpp.h... yes
checking for H5F_open in -lhdf5... yes

Observe it fail to link to the C++ lib:
checking "For C++ ABI compatibility with HDF5Cpp library"... no
checking for hdf5 library... no

I tried this with both hdf5 1.10 and hdf5 1.14 with the "api flag" and in all cases it fails to link during configure's test

On Mac Monterey, with 14.0.0 clang, hdf5 1.14 with the "api flag" set to v110 has no problems in sst-core's configure

3 - What Operating system(s) and versions

Ubuntu 22.04, using gcc/g++ 11.4.0

4 - What version of external libraries (MPI, etc.)

both hdf5 1.10.5 (as recommended by the SST release notes, etc) and a newer hdf5 1.14.1 (*with proper --with-default-api-version=v110 configure flag set)

5 - Provide sha1 of all relevant SST repositories (sst-core, sst-elements, etc)

using release tarball of sst-core 13.0.0
eaa2b06981631232cd2c22f405a61aa3fb0f1a5c sstcore-13.0.0.tar.gz

@harvv
Copy link
Author

harvv commented Oct 4, 2023

additional note: In the 13.0.0 Release notes ( http://sst-simulator.org/SSTPages/SSTmicroRelease_V13dot0dot0/ ), Optional components lists "HDF5 1.10.5 or greater" . This is not strictly correct, as the API in HDF5 changed after version 1.10 ( see https://confluence.hdfgroup.org/display/HDF5/Migrating+from+HDF5+1.10+to+HDF5+1.12 ).
In order to use hdf5 >1.10 with SST, the hdf5 library must be manually built with certain options

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants