[SyneRBI/SIRF-SuperBuild] find C and CXX COMPONENTS for HDF5 (PR #973)

4 views
Skip to first unread message

Kris Thielemans

unread,
Nov 20, 2025, 10:51:08 AM11/20/25
to SyneRBI/SIRF-SuperBuild, Subscribed

STIR needs CXX, ISMRMRD needs C


You can view, comment on, or merge this pull request online at:

  https://github.com/SyneRBI/SIRF-SuperBuild/pull/973

Commit Summary

  • d35bd2c find C and CXX COMPONENTS for (system) HDF5

File Changes

(1 file)

Patch Links:


Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you are subscribed to this thread.Message ID: <SyneRBI/SIRF-SuperBuild/pull/973@github.com>

Kris Thielemans

unread,
Nov 20, 2025, 12:35:56 PM11/20/25
to SyneRBI/SIRF-SuperBuild, Push

@KrisThielemans pushed 1 commit.


View it on GitHub or unsubscribe.
You are receiving this because you are subscribed to this thread.Message ID: <SyneRBI/SIRF-SuperBuild/pull/973/before/d35bd2c25d139e31b0cb9b6b1887b755ae523d90/after/ad1edf141c78788e354d240454573a6460a6978d@github.com>

Kris Thielemans

unread,
Nov 20, 2025, 5:29:47 PM11/20/25
to SyneRBI/SIRF-SuperBuild, Push

@KrisThielemans pushed 1 commit.

  • 2f5b276 update STIR_TAG to 12Nove2025


View it on GitHub or unsubscribe.
You are receiving this because you are subscribed to this thread.Message ID: <SyneRBI/SIRF-SuperBuild/pull/973/before/ad1edf141c78788e354d240454573a6460a6978d/after/2f5b2769992243c9380332fda8a3401c0aaa3cf5@github.com>

Kris Thielemans

unread,
Nov 23, 2025, 11:23:22 AM11/23/25
to SyneRBI/SIRF-SuperBuild, Subscribed
KrisThielemans left a comment (SyneRBI/SIRF-SuperBuild#973)

In the SIRF CMake run, I see

CMake Warning:
  Ignoring extra path from command line:
   "/usr/lib/x86_64-linux-gnu/libcrypto.so"

CMake Warning:
  Ignoring extra path from command line:
   "/usr/lib/x86_64-linux-gnu/libm.so"

This indicates that there's something wrong with how we pass HDF5_LIBRARIES. Not sure if that matters though, see below.

Then I see

HDF5: Using hdf5 compiler wrapper to determine C configuration

which probably comes from ISMRMRD (which only needs C), and a few lines further, the debug print correctly says

-- HDF5_LIBRARIES: /usr/lib/x86_64-linux-gnu/hdf5/serial/libhdf5.so;/usr/lib/x86_64-linux-gnu/hdf5/serial/libhdf5.so;/usr/lib/x86_64-linux-gnu/hdf5/serial/libhdf5.so;/usr/lib/x86_64-linux-gnu/libcrypto.so;/usr/lib/x86_64-linux-gnu/libcurl.so;/usr/lib/x86_64-linux-gnu/libpthread.a;/usr/lib/x86_64-linux-gnu/libsz.so;/home/runner/install/lib/libz.a;/usr/lib/x86_64-linux-gnu/libdl.a;/usr/lib/x86_64-linux-gnu/libm.so

and a few more lines further

- Found Boost: /usr/lib/x86_64-linux-gnu/cmake/Boost-1.74.0/BoostConfig.cmake (found suitable version "1.74.0", minimum required is "1.74.0")
-- ITK support in STIR enabled.
-- HDF5 support in STIR enabled.
-- HDF5: Using hdf5 compiler wrapper to determine CXX configuration

and correct reporting of libhdf5_cpp.so. However, the actual SIRF linking only uses libhdf5.so with the surrounding libraries

/home/runner/install/lib/libismrmrd.so.1.13.7  /usr/lib/x86_64-linux-gnu/hdf5/serial/libhdf5.so  /usr/lib/x86_64-linux-gnu/libcrypto.so

My current diagnosis is therefore that this is a problem caused by ISMRMRD using the C component and STIR using the CXX component. CMake might be evaluating the HDF5::HDF5 target (used in STIR lib dependencies) with the one created when looking for the C version only.

STIR really should depend on the hdf5::hdf5_cpp target, but that can't be done due to a CMake bug https://gitlab.kitware.com/cmake/cmake/-/issues/27379.


Reply to this email directly, view it on GitHub, or unsubscribe.

You are receiving this because you are subscribed to this thread.Message ID: <SyneRBI/SIRF-SuperBuild/pull/973/c3568124484@github.com>

Kris Thielemans

unread,
Nov 23, 2025, 12:40:30 PM11/23/25
to SyneRBI/SIRF-SuperBuild, Push

@KrisThielemans pushed 1 commit.


View it on GitHub or unsubscribe.
You are receiving this because you are subscribed to this thread.Message ID: <SyneRBI/SIRF-SuperBuild/pull/973/before/2f5b2769992243c9380332fda8a3401c0aaa3cf5/after/9a4e63784625f0aa9a79909e5b7b1e256d9f98d8@github.com>

Kris Thielemans

unread,
Nov 23, 2025, 12:55:30 PM11/23/25
to SyneRBI/SIRF-SuperBuild, Push

@KrisThielemans pushed 1 commit.


View it on GitHub or unsubscribe.
You are receiving this because you are subscribed to this thread.Message ID: <SyneRBI/SIRF-SuperBuild/pull/973/before/9a4e63784625f0aa9a79909e5b7b1e256d9f98d8/after/a6bd60b9a21d083fd96f0a0ec5d80d4df89fdb6c@github.com>

Kris Thielemans

unread,
Nov 28, 2025, 8:35:23 AM11/28/25
to SyneRBI/SIRF-SuperBuild, Push

@KrisThielemans pushed 1 commit.

  • aceacb6 Fix HDF5 version restriction


View it on GitHub or unsubscribe.
You are receiving this because you are subscribed to this thread.Message ID: <SyneRBI/SIRF-SuperBuild/pull/973/before/a6bd60b9a21d083fd96f0a0ec5d80d4df89fdb6c/after/aceacb6687e15677d6a8165ca0b7ff4eda654779@github.com>

Kris Thielemans

unread,
Nov 28, 2025, 9:14:45 AM11/28/25
to SyneRBI/SIRF-SuperBuild, Subscribed
KrisThielemans left a comment (SyneRBI/SIRF-SuperBuild#973)

All native builds are building again!

One unrelated run-time error due to SyneRBI/SIRF#1363.


Reply to this email directly, view it on GitHub, or unsubscribe.

You are receiving this because you are subscribed to this thread.Message ID: <SyneRBI/SIRF-SuperBuild/pull/973/c3589495020@github.com>

Casper da Costa-Luis

unread,
Nov 28, 2025, 10:31:04 AM11/28/25
to SyneRBI/SIRF-SuperBuild, Subscribed

@casperdcl approved this pull request.

lgtm


Reply to this email directly, view it on GitHub, or unsubscribe.

You are receiving this because you are subscribed to this thread.Message ID: <SyneRBI/SIRF-SuperBuild/pull/973/review/3519369897@github.com>

Casper da Costa-Luis

unread,
Nov 28, 2025, 10:31:10 AM11/28/25
to SyneRBI/SIRF-SuperBuild, Subscribed

@casperdcl commented on this pull request.


In SuperBuild/External_HDF5.cmake:

>        if (HDF5_ROOT)
         set(HDF5_CMAKE_ARGS ${HDF5_CMAKE_ARGS} -DHDF5_ROOT:PATH=${HDF5_ROOT})
       endif()
+      if (HDF5_DIR)
+        set(HDF5_CMAKE_ARGS ${HDF5_CMAKE_ARGS} -DHDF5_DIR:PATH=${HDF5_DIR})
+      endif()

unsure about the interaction betwixt *_ROOT and *_DIR but willing to try anything to slay the HDF5 beast at this point


Reply to this email directly, view it on GitHub, or unsubscribe.

You are receiving this because you are subscribed to this thread.Message ID: <SyneRBI/SIRF-SuperBuild/pull/973/review/3519369819@github.com>

Kris Thielemans

unread,
Nov 28, 2025, 10:35:03 AM11/28/25
to SyneRBI/SIRF-SuperBuild, Subscribed

@KrisThielemans commented on this pull request.


In SuperBuild/External_HDF5.cmake:

>        if (HDF5_ROOT)
         set(HDF5_CMAKE_ARGS ${HDF5_CMAKE_ARGS} -DHDF5_ROOT:PATH=${HDF5_ROOT})
       endif()
+      if (HDF5_DIR)
+        set(HDF5_CMAKE_ARGS ${HDF5_CMAKE_ARGS} -DHDF5_DIR:PATH=${HDF5_DIR})
+      endif()

HDF5_DIR is used to find the hdf5-config,cmake. HDF5_ROOT will be used if HDF5_DIR isn't set and h5cc doesn't work, and then first used to find a config from there, and if that fails, use find_library etc (although that is more or less guaranteed to fail, as that doesn't know about dependent libraries).

easy!


Reply to this email directly, view it on GitHub, or unsubscribe.

You are receiving this because you are subscribed to this thread.Message ID: <SyneRBI/SIRF-SuperBuild/pull/973/review/3519378909@github.com>

Kris Thielemans

unread,
Nov 28, 2025, 10:35:43 AM11/28/25
to SyneRBI/SIRF-SuperBuild, Subscribed

Merged #973 into master.


Reply to this email directly, view it on GitHub, or unsubscribe.

You are receiving this because you are subscribed to this thread.Message ID: <SyneRBI/SIRF-SuperBuild/pull/973/issue_event/21244765756@github.com>

Reply all
Reply to author
Forward
0 new messages