Source: xmrig
Version: 6.26.0+dfsg-1
Severity: important
Tags: ftbfs
X-Debbugs-Cc: [email protected], [email protected]
Control: affects -1 src:fmtlib

xmrig 6.26.0+dfsg-1 fails to build with fmtlib 12.2.0+ds1-2 from
experimental during the fmtlib transition rebuild on arm64.

To reproduce, rebuild xmrig in a clean sid build environment with
libfmt-dev and libfmt12 12.2.0+ds1-2 from experimental.

LinuxMemory.cpp includes "3rdparty/fmt/core.h", which debian/rules
redirects to /usr/include/fmt. In fmt 12.2, core.h includes base.h rather
than format.h by default, so these calls need an explicit fmt/format.h
include:

  src/crypto/common/LinuxMemory.cpp:68:17: error: ‘format’ is not a member of 
‘fmt’
     68 |     return 
fmt::format("/sys/devices/system/node/node{}/hugepages/hugepages-{}kB/{}_hugepages",
 node, hugePageSize / 1024, nr ? "nr" : "free");
        |                 ^~~~~~
  src/crypto/common/LinuxMemory.cpp:74:17: error: ‘format’ is not a member of 
‘fmt’
     74 |     return 
fmt::format("/sys/kernel/mm/hugepages/hugepages-{}kB/{}_hugepages", 
hugePageSize / 1024, nr ? "nr" : "free");
        |                 ^~~~~~

This is distinct from #1086567, the fmt 10 failure involving the
xmrig::String formatter, fixed in 6.22.2+dfsg-2.

The full build log is attached.

Attachment: xmrig-fmt122-header-arm64.log.gz
Description: application/gzip

Reply via email to