#1151594 volk: FTBFS with fmt 12.2 (fmt/core.h no longer provides fmt::format)

#1151594#5
Date:
2026-10-22 07:15:23 UTC
From:
To:
volk fails to build in sid on arm64 with fmtlib 12.2.0+ds1-2 from
experimental during the fmtlib transition rebuild:

https://release.debian.org/transitions/html/auto-fmtlib.html

To reproduce, first rebuild spdlog against libfmt-dev and libfmt12
12.2.0+ds1-2 from experimental, then rebuild Doxygen using that
fmt12-compatible spdlog. Rebuild volk 3.3.0-3 in a clean sid build
environment with these fmt packages, rebuilt Doxygen and the rebuilt
spdlog runtime explicitly selected; include architecture-independent
packages so Doxygen is installed.

lib/qa_utils.cc includes <fmt/core.h> but uses fmt::format. In fmt 12.2,
core.h includes base.h by default, not format.h. Please include
<fmt/format.h> explicitly where fmt::format is used.

Relevant build-log excerpt:

  /build/reproducible-path/volk-3.3.0/lib/qa_utils.cc:626:38: error: ‘format’ is not a member of ‘fmt’; did you mean ‘std::format’?
    626 |         fmt::print(" | {:>10}", fmt::format("in{}", k));
        |                                      ^~~~~~
  /build/reproducible-path/volk-3.3.0/lib/qa_utils.cc:1454:21: error: ‘format’ is not a member of ‘fmt’; did you mean ‘std::format’?
  /build/reproducible-path/volk-3.3.0/lib/qa_utils.cc:1458:21: error: ‘format’ is not a member of ‘fmt’; did you mean ‘std::format’?

The full build log is attached.

Regards,
Aron