#1133548 metaeuk: ftbfs with GCC-16

Package:
src:metaeuk
Source:
src:metaeuk
Submitter:
Emanuele Rocca
Date:
2026-08-11 12:07:02 UTC
Severity:
normal
Tags:
#1133548#5
Date:
2026-04-13 13:07:00 UTC
From:
To:
Hi,

metaeuk fails to build in a test rebuild on at least amd64 and arm64 with
gcc-16/g++-16, but builds properly with gcc-15/g++-15. The severity of this
report will be raised before the forky release.

The full build log can be found at:
https://people.debian.org/~ema/gcc-16-rebuilds/output-1/metaeuk_arm64.build.xz

The last lines of the build log are at the end of this report.

To build with GCC 16, either set CC=gcc-16 CXX=g++-16 explicitly,
or install the gcc, g++, gfortran, ... packages from experimental.

  apt-get -t=experimental install g++

Common build failures include unused (but set) variables, array subscripts
partly outside array bounds, and new/dropped symbols in Debian symbols files.
For other C/C++ related build failures see the porting guide at
http://gcc.gnu.org/gcc-16/porting_to.html

Please only close this issue after double-checking that the package can be
built correctly with GCC 16.

Please do not reassign this bug to another package. If a fix in another package
is required, then file a bug for the other package (or clone), and mark this
bug as blocked by the bug in the other package.

[...]


1498:         Debug(Debug::ERROR) << "Cannot close file " << fileName << "\n";
1498:         do { int __status = (
1498: # 1278 "/build/reproducible-path/metaeuk-7-bba0d80+ds/lib/mmseqs/src/linclust/kmermatcher.cpp" 3
1498:        1
1498: # 1278 "/build/reproducible-path/metaeuk-7-bba0d80+ds/lib/mmseqs/src/linclust/kmermatcher.cpp"
1498:        ); std::cerr.flush(); std::cout.flush(); exit(__status); } while(0);
1498:     }
1498: }
1498:
1498: void setKmerLengthAndAlphabet(Parameters ¶meters, size_t aaDbSize, int seqTyp) {
1498:     if(Parameters::isEqualDbtype(seqTyp, Parameters::DBTYPE_NUCLEOTIDES)){
1498:         if(parameters.kmerSize == 0) {
1498:             parameters.kmerSize = std::max(17, static_cast<int>(log(static_cast<float>(aaDbSize))/log(4)));
1498:             parameters.spacedKmerPattern = "";
1498:             parameters.alphabetSize = 5;
1498:         }
1498:         if(parameters.kmersPerSequence == 0){
1498:             parameters.kmersPerSequence = 60;
1498:         }
1498:     }else{
1498:         if(parameters.kmerSize == 0){
1498:             if((parameters.seqIdThr+0.001)>=0.99){
1498:                 parameters.kmerSize = 14;
1498:                 parameters.alphabetSize = 21;
1498:             }else if((parameters.seqIdThr+0.001)>=0.9){
1498:                 parameters.kmerSize = 14;
1498:                 parameters.alphabetSize = 13;
1498:             }else{
1498:                 parameters.kmerSize = std::max(10, static_cast<int>(log(static_cast<float>(aaDbSize))/log(8.7)));
1498:                 parameters.alphabetSize = 13;
1498:             }
1498:             parameters.spacedKmerPattern = "";
1498:         }
1498:         if(parameters.kmersPerSequence == 0){
1498:             parameters.kmersPerSequence = 20;
1498:         }
1498:     }
1498: }
1498:
1498: template std::pair<size_t, size_t> fillKmerPositionArray<0, short>(KmerPosition<short> * kmerArray, size_t kmerArraySize, DBReader<unsigned int> &seqDbr,
1498:                                                                     Parameters & par, BaseMatrix * subMat, bool hashWholeSequence, size_t hashStartRange, size_t hashEndRange, size_t * hashDistribution);
1498: template std::pair<size_t, size_t> fillKmerPositionArray<1, short>(KmerPosition<short> * kmerArray, size_t kmerArraySize, DBReader<unsigned int> &seqDbr,
1498:                                                                     Parameters & par, BaseMatrix * subMat, bool hashWholeSequence, size_t hashStartRange, size_t hashEndRange, size_t * hashDistribution);
1498: template std::pair<size_t, size_t> fillKmerPositionArray<2, short>(KmerPosition<short> * kmerArray, size_t kmerArraySize, DBReader<unsigned int> &seqDbr,
1498:                                                                     Parameters & par, BaseMatrix * subMat, bool hashWholeSequence, size_t hashStartRange, size_t hashEndRange, size_t * hashDistribution);
1498: template std::pair<size_t, size_t> fillKmerPositionArray<0, int>(KmerPosition<int> * kmerArray, size_t kmerArraySize, DBReader<unsigned int> &seqDbr,
1498:                                                                   Parameters & par, BaseMatrix * subMat, bool hashWholeSequence, size_t hashStartRange, size_t hashEndRange, size_t * hashDistribution);
1498: template std::pair<size_t, size_t> fillKmerPositionArray<1, int>(KmerPosition <int>* kmerArray, size_t kmerArraySize, DBReader<unsigned int> &seqDbr,
1498:                                                                   Parameters & par, BaseMatrix * subMat, bool hashWholeSequence, size_t hashStartRange, size_t hashEndRange, size_t * hashDistribution);
1498: template std::pair<size_t, size_t> fillKmerPositionArray<2, int>(KmerPosition< int> * kmerArray, size_t kmerArraySize, DBReader<unsigned int> &seqDbr,
1498:                                                                   Parameters & par, BaseMatrix * subMat, bool hashWholeSequence, size_t hashStartRange, size_t hashEndRange, size_t * hashDistribution);
1498:
1498: template KmerPosition<short> *initKmerPositionMemory(size_t size);
1498: template KmerPosition<int> *initKmerPositionMemory(size_t size);
1498:
1498: template size_t computeMemoryNeededLinearfilter<short>(size_t totalKmer);
1498: template size_t computeMemoryNeededLinearfilter<int>(size_t totalKmer);
1498:
1498: template std::vector<std::pair<size_t, size_t>> setupKmerSplits<short>(Parameters &par, BaseMatrix * subMat, DBReader<unsigned int> &seqDbr, size_t totalKmers, size_t splits);
1498: template std::vector<std::pair<size_t, size_t>> setupKmerSplits<int>(Parameters &par, BaseMatrix * subMat, DBReader<unsigned int> &seqDbr, size_t totalKmers, size_t splits);
=== END GCC DUMP ===
make[3]: *** [lib/mmseqs/src/CMakeFiles/mmseqs-framework.dir/build.make:1076: lib/mmseqs/src/CMakeFiles/mmseqs-framework.dir/linclust/kmermatcher.cpp.o] Error 1
make[3]: *** Waiting for unfinished jobs....
make[3]: Leaving directory '/build/reproducible-path/metaeuk-7-bba0d80+ds/obj-aarch64-linux-gnu'
make[2]: *** [CMakeFiles/Makefile2:848: lib/mmseqs/src/CMakeFiles/mmseqs-framework.dir/all] Error 2
make[2]: Leaving directory '/build/reproducible-path/metaeuk-7-bba0d80+ds/obj-aarch64-linux-gnu'
make[1]: *** [Makefile:139: all] Error 2
make[1]: Leaving directory '/build/reproducible-path/metaeuk-7-bba0d80+ds/obj-aarch64-linux-gnu'
dh_auto_build: error: cd obj-aarch64-linux-gnu && make -j128 INSTALL="install --strip-program=true" VERBOSE=1 returned exit code 2
make: *** [debian/rules:14: binary] Error 25
dpkg-buildpackage: error: debian/rules binary subprocess failed with exit status 2

#1133548#12
Date:
2026-08-11 12:04:47 UTC
From:
To:
We believe that the bug you reported is fixed in the latest version of
metaeuk, which is due to be installed in the Debian FTP archive.

A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to 1133548@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Andreas Tille <tille@debian.org> (supplier of updated metaeuk package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmaster@ftp-master.debian.org)
Format: 1.8
Date: Tue, 11 Aug 2026 10:56:54 +0200
Source: metaeuk
Architecture: source
Version: 7-bba0d80+ds-3
Distribution: unstable
Urgency: medium
Maintainer: Debian Med Packaging Team <debian-med-packaging@lists.alioth.debian.org>
Changed-By: Andreas Tille <tille@debian.org>
Closes: 1133548
Changes:
 metaeuk (7-bba0d80+ds-3) unstable; urgency=medium
 .
   * Team upload.
   [ Sascha Steinbiss ]
   * Update salsa-ci.yml to current Debian Med one.
 .
   [ Andreas Tille ]
   * d/watch: version=5
   * d/rules: Add -std=gnu++14 to CXXFLAGS
     Closes: #1133548
   * Standards-Version: 4.7.4 (routine-update)
   * Reflow Uploaders field (cme)
   * Remove Priority field (cme)
   * Drop 'Rules-Requires-Root: no' from d/control (routine-update)
   * debputy lint --auto-fix (routine-update)
Checksums-Sha1:
 bc859afd7317dbc6be85f37c66a2070b1f14bd85 2223 metaeuk_7-bba0d80+ds-3.dsc
 b383971643ab89dcac9732909b7c553ec9ef5b16 7548 metaeuk_7-bba0d80+ds-3.debian.tar.xz
 20737070020816a12f8bc380423b5e5eaf1c5052 7497 metaeuk_7-bba0d80+ds-3_amd64.buildinfo
Checksums-Sha256:
 cbf092082e89406dbef56fc7eb8214a991393770e34e2139ab4c8f6892fa30f5 2223 metaeuk_7-bba0d80+ds-3.dsc
 89f4cc9c5157263b3f6b3cb2f34e279ebfea581bb1bc64714a11baf1d5ca52d5 7548 metaeuk_7-bba0d80+ds-3.debian.tar.xz
 57c22d7ee43a3541c7f348117cc2fc052085e56b722b191704e136059fbb8523 7497 metaeuk_7-bba0d80+ds-3_amd64.buildinfo
Files:
 8184ee6d09ddc893ecf825f63b80555d 2223 science optional metaeuk_7-bba0d80+ds-3.dsc
 b41cd38ebe0b831f68bf315572d28755 7548 science optional metaeuk_7-bba0d80+ds-3.debian.tar.xz
 dc7cdca28175f60b35eb493707c28d3a 7497 science optional metaeuk_7-bba0d80+ds-3_amd64.buildinfo
-----BEGIN PGP SIGNATURE-----

iQJFBAEBCgAvFiEE8fAHMgoDVUHwpmPKV4oElNHGRtEFAmp7DWwRHHRpbGxlQGRl
Ymlhbi5vcmcACgkQV4oElNHGRtHxPA/+IT3YjFynz5ihES0L2RYOJ/Uzi6ItWgOV
JMOYU22zt6Yj22GVoxBBL+K5lyGtZJ8I7Ri8X8LywNBOM+O52aVDA6jjR5AammzX
UiL04rZRcVwl+02YMFpq6zuhYFptZxJGIG3DKjRqA/qCcJeAe4JEAg5+7MvcI0AC
JTHiK6/9d4F/rdKIXKcMh3xO6sU7bHuwzXP6vZz8BoT/Oe4n+tKZWGNIg9jhFypy
l6in0IAjFgb4rRzN9RnAdu2g82yPemkE+n1ocqHQms4I7bjPv2IdqwS3rUfqwz+W
FXJRaolW1ESeQi/JVP2f6J+aDbzz5zTZ/MlH1lmBEW1YcWJ+Ali5F1DirSiUSIQZ
ISFfhjnygCqaHUu/jp3aLBKl4xnfpgp2Qfxw8Q4hLJUvNQndYTmooTCDQ8U6PDDs
wfeSCn9HgzYBC90W01pbjVBhm2uqmB50HhHtkH2Lwfx0tjEYnBYr4MmJTKAbCkty
qNL2mS+orWQf1MZoWFPUkGLW7XtNwi6O63YrgrEt33swTFwVUzt+xp4W9L11IbJV
Ih50wP0+TnHgUBdtTeZY1KHeQfko5aPUFgNcWvG9Tp5ObkPQwDOCpLbgmuutu3VJ
eoPwSdcLOwIkCFy3ztyXC349VGYcgxbGqKgbY/xkqbjn1FFTfCuj8UZ3XWqgpb9T
int/U7WwTZU=
=QAlw
-----END PGP SIGNATURE-----