[Debian-med-packaging] Bug#984079: khmer: ftbfs with GCC-11

Matthias Klose doko at debian.org
Wed Mar 3 16:13:50 GMT 2021


Package: src:khmer
Version: 2.1.2+dfsg-8
Severity: normal
Tags: sid bookworm
User: debian-gcc at lists.debian.org
Usertags: ftbfs-gcc-11

[This bug is not targeted to the upcoming bullseye release]

Please keep this issue open in the bug tracker for the package it
was filed for.  If a fix in another package is required, please
file a bug for the other package (or clone), and add a block in this
package. Please keep the issue open until the package can be built in
a follow-up test rebuild.

The package fails to build in a test rebuild on at least amd64 with
gcc-11/g++-11, but succeeds to build with gcc-10/g++-10. The
severity of this report will be raised before the bookworm release,
so nothing has to be done for the bullseye release.

The full build log can be found at:
http://people.debian.org/~doko/logs/20210228/filtered/gcc11/khmer_2.1.2+dfsg-8_unstable_gcc11.log
The last lines of the build log are at the end of this report.

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

  apt-get -t=experimental install g++ 

Common build failures are new warnings resulting in build failures with
-Werror turned on, or new/dropped symbols in Debian symbols files.
For other C/C++ related build failures see the porting guide at
http://gcc.gnu.org/gcc-11/porting_to.html

GCC 11 defaults to the GNU++17 standard.  If your package installs
header files in /usr/include, please don't work around C++17 issues
by choosing a lower C++ standard for the package build, but fix these
issues to build with the C++17 standard.

[...]
src/oxli/hashtable.cc:512:1:   required from here
src/oxli/hashtable.cc:103:18: warning: catching polymorphic type ‘struct oxli::read_parsers::NoMoreReadsAvailable’ by value [-Wcatch-value=]
  103 |         } catch (NoMoreReadsAvailable) {
      |                  ^~~~~~~~~~~~~~~~~~~~
src/oxli/hashtable.cc: In instantiation of ‘void oxli::Hashtable::consume_seqfile_banding(oxli::read_parsers::ReadParserPtr<SeqIO>&, unsigned int, unsigned int, unsigned int&, long long unsigned int&) [with SeqIO = oxli::read_parsers::FastxReader; oxli::read_parsers::ReadParserPtr<SeqIO> = std::unique_ptr<oxli::read_parsers::ReadParser<oxli::read_parsers::FastxReader> >]’:
src/oxli/hashtable.cc:529:1:   required from here
src/oxli/hashtable.cc:133:18: warning: catching polymorphic type ‘struct oxli::read_parsers::NoMoreReadsAvailable’ by value [-Wcatch-value=]
  133 |         } catch (NoMoreReadsAvailable) {
      |                  ^~~~~~~~~~~~~~~~~~~~
x86_64-linux-gnu-gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -ffile-prefix-map=/build/python3.9-RNBry6/python3.9-3.9.2=. -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2 -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -DVERSION=2.1.2 -DSEQAN_HAS_BZIP2=1 -DSEQAN_HAS_ZLIB=1 -UNO_UNIQUE_RC -Iinclude -I. -Iinclude -Ithird-party/seqan/core/include -Ithird-party/smhasher -I/usr/include/python3.9 -c src/oxli/hllcounter.cc -o build/temp.linux-x86_64-3.9/src/oxli/hllcounter.o -O3 -std=c++11 -pedantic -fopenmp
src/oxli/hllcounter.cc: In instantiation of ‘void oxli::HLLCounter::consume_seqfile(oxli::read_parsers::ReadParserPtr<SeqIO>&, bool, unsigned int&, long long unsigned int&) [with SeqIO = oxli::read_parsers::FastxReader; oxli::read_parsers::ReadParserPtr<SeqIO> = std::unique_ptr<oxli::read_parsers::ReadParser<oxli::read_parsers::FastxReader> >]’:
src/oxli/hllcounter.cc:524:1:   required from here
src/oxli/hllcounter.cc:428:40: warning: catching polymorphic type ‘struct oxli::read_parsers::NoMoreReadsAvailable’ by value [-Wcatch-value=]
  428 |                 } catch (read_parsers::NoMoreReadsAvailable) {
      |                                        ^~~~~~~~~~~~~~~~~~~~
x86_64-linux-gnu-gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -ffile-prefix-map=/build/python3.9-RNBry6/python3.9-3.9.2=. -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2 -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -DVERSION=2.1.2 -DSEQAN_HAS_BZIP2=1 -DSEQAN_HAS_ZLIB=1 -UNO_UNIQUE_RC -Iinclude -I. -Iinclude -Ithird-party/seqan/core/include -Ithird-party/smhasher -I/usr/include/python3.9 -c src/oxli/kmer_filters.cc -o build/temp.linux-x86_64-3.9/src/oxli/kmer_filters.o -O3 -std=c++11 -pedantic -fopenmp
x86_64-linux-gnu-gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -ffile-prefix-map=/build/python3.9-RNBry6/python3.9-3.9.2=. -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2 -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -DVERSION=2.1.2 -DSEQAN_HAS_BZIP2=1 -DSEQAN_HAS_ZLIB=1 -UNO_UNIQUE_RC -Iinclude -I. -Iinclude -Ithird-party/seqan/core/include -Ithird-party/smhasher -I/usr/include/python3.9 -c src/oxli/kmer_hash.cc -o build/temp.linux-x86_64-3.9/src/oxli/kmer_hash.o -O3 -std=c++11 -pedantic -fopenmp
src/oxli/kmer_hash.cc: In function ‘std::pair<long unsigned int, long unsigned int> oxli::compute_band_interval(unsigned int, unsigned int)’:
src/oxli/kmer_hash.cc:226:31: error: ‘numeric_limits’ is not a member of ‘std’
  226 |     uint64_t band_size = std::numeric_limits<uint64_t>::max() / num_bands;
      |                               ^~~~~~~~~~~~~~
src/oxli/kmer_hash.cc:226:54: error: expected primary-expression before ‘>’ token
  226 |     uint64_t band_size = std::numeric_limits<uint64_t>::max() / num_bands;
      |                                                      ^
src/oxli/kmer_hash.cc:226:61: error: no matching function for call to ‘max()’
  226 |     uint64_t band_size = std::numeric_limits<uint64_t>::max() / num_bands;
      |                                                             ^
In file included from /usr/include/c++/11/algorithm:61,
                 from src/oxli/kmer_hash.cc:41:
/usr/include/c++/11/bits/stl_algobase.h:254:5: note: candidate: ‘template<class _Tp> const _Tp& std::max(const _Tp&, const _Tp&)’
  254 |     max(const _Tp& __a, const _Tp& __b)
      |     ^~~
/usr/include/c++/11/bits/stl_algobase.h:254:5: note:   template argument deduction/substitution failed:
src/oxli/kmer_hash.cc:226:61: note:   candidate expects 2 arguments, 0 provided
  226 |     uint64_t band_size = std::numeric_limits<uint64_t>::max() / num_bands;
      |                                                             ^
In file included from /usr/include/c++/11/algorithm:61,
                 from src/oxli/kmer_hash.cc:41:
/usr/include/c++/11/bits/stl_algobase.h:300:5: note: candidate: ‘template<class _Tp, class _Compare> const _Tp& std::max(const _Tp&, const _Tp&, _Compare)’
  300 |     max(const _Tp& __a, const _Tp& __b, _Compare __comp)
      |     ^~~
/usr/include/c++/11/bits/stl_algobase.h:300:5: note:   template argument deduction/substitution failed:
src/oxli/kmer_hash.cc:226:61: note:   candidate expects 3 arguments, 0 provided
  226 |     uint64_t band_size = std::numeric_limits<uint64_t>::max() / num_bands;
      |                                                             ^
In file included from /usr/include/c++/11/algorithm:62,
                 from src/oxli/kmer_hash.cc:41:
/usr/include/c++/11/bits/stl_algo.h:3461:5: note: candidate: ‘template<class _Tp> _Tp std::max(std::initializer_list<_Tp>)’
 3461 |     max(initializer_list<_Tp> __l)
      |     ^~~
/usr/include/c++/11/bits/stl_algo.h:3461:5: note:   template argument deduction/substitution failed:
src/oxli/kmer_hash.cc:226:61: note:   candidate expects 1 argument, 0 provided
  226 |     uint64_t band_size = std::numeric_limits<uint64_t>::max() / num_bands;
      |                                                             ^
In file included from /usr/include/c++/11/algorithm:62,
                 from src/oxli/kmer_hash.cc:41:
/usr/include/c++/11/bits/stl_algo.h:3467:5: note: candidate: ‘template<class _Tp, class _Compare> _Tp std::max(std::initializer_list<_Tp>, _Compare)’
 3467 |     max(initializer_list<_Tp> __l, _Compare __comp)
      |     ^~~
/usr/include/c++/11/bits/stl_algo.h:3467:5: note:   template argument deduction/substitution failed:
src/oxli/kmer_hash.cc:226:61: note:   candidate expects 2 arguments, 0 provided
  226 |     uint64_t band_size = std::numeric_limits<uint64_t>::max() / num_bands;
      |                                                             ^
error: command '/usr/bin/x86_64-linux-gnu-gcc' failed with exit code 1
E: pybuild pybuild:353: build: plugin distutils failed with: exit code=1: /usr/bin/python3 setup.py build 
dh_auto_build: error: pybuild --build --test-pytest -i python{version} -p 3.9 returned exit code 13
make[1]: *** [debian/rules:19: override_dh_auto_build] Error 25
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
make: *** [debian/rules:16: binary] Error 2
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2



More information about the Debian-med-packaging mailing list