[Debian-med-packaging] Bug#957519: mapsembler2: ftbfs with GCC-10

Matthias Klose doko at debian.org
Fri Apr 17 12:05:45 BST 2020


Package: src:mapsembler2
Version: 2.2.4+dfsg-3
Severity: normal
Tags: sid bullseye
User: debian-gcc at lists.debian.org
Usertags: ftbfs-gcc-10

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-10/g++-10, but succeeds to build with gcc-9/g++-9. The
severity of this report will be raised before the bullseye release,
so nothing has to be done for the buster release.

The full build log can be found at:
http://people.debian.org/~doko/logs/gcc10-20200225/mapsembler2_2.2.4+dfsg-3_unstable_gcc10.log
The last lines of the build log are at the end of this report.

To build with GCC 10, either set CC=gcc-10 CXX=g++-10 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-10/porting_to.html

[...]
      |                                                                                 |     |
      |                                                                                 |     uint64_t {aka long unsigned int}
      |                                                                                 long long int
      |                                                                              %li
../minia/Debloom.cpp: In function ‘Set* load_false_positives()’:
../minia/Debloom.cpp:280:112: warning: format ‘%lld’ expects argument of type ‘long long int’, but argument 4 has type ‘int64_t’ {aka ‘long int’} [-Wformat=]
  280 |         if ((NbInsertedKmers%10000)==0) fprintf (stderr,(char*)"%cInsert false positive Kmers in hash table %lld",13,NbInsertedKmers);
      |                                                                                                             ~~~^     ~~~~~~~~~~~~~~~
      |                                                                                                                |     |
      |                                                                                                                |     int64_t {aka long int}
      |                                                                                                                long long int
      |                                                                                                             %ld
../minia/Debloom.cpp:284:36: warning: format ‘%lld’ expects argument of type ‘long long int’, but argument 3 has type ‘int64_t’ {aka ‘long int’} [-Wformat=]
  284 |     fprintf (stderr,"\nInserted %lld false positive kmers in the hash structure.\n\n",NbInsertedKmers);
      |                                 ~~~^                                                  ~~~~~~~~~~~~~~~
      |                                    |                                                  |
      |                                    long long int                                      int64_t {aka long int}
      |                                 %ld
../minia/Debloom.cpp: In function ‘void print_size_summary(FPSet*)’:
../minia/Debloom.cpp:445:50: warning: format ‘%lli’ expects argument of type ‘long long int’, but argument 3 has type ‘uint64_t’ {aka ‘long unsigned int’} [-Wformat=]
  445 |   fprintf(stderr, "Size of the FP table     : %lli FP x %d bits =  %.2lf MB  \n", fp->capacity(), bits_per_FP_element, toMB((double)(size_T1)) );
      |                                               ~~~^                                ~~~~~~~~~~~~~~
      |                                                  |                                            |
      |                                                  long long int                                uint64_t {aka long unsigned int}
      |                                               %li
../minia/Debloom.cpp:448:47: warning: format ‘%lld’ expects argument of type ‘long long int’, but argument 4 has type ‘uint64_t’ {aka ‘long unsigned int’} [-Wformat=]
  448 |   fprintf(stderr,"      Total %.2lf MB for %lld solid kmers  ==>  %.2lf bits / solid kmer\n\n", toMB(total_size), nbkmers_solid, total_size / nbkmers_solid);
      |                                            ~~~^                                                                   ~~~~~~~~~~~~~
      |                                               |                                                                   |
      |                                               long long int                                                       uint64_t {aka long unsigned int}
      |                                            %ld
../minia/Debloom.cpp: In function ‘void print_size_summary(FPSetCascading4*)’:
../minia/Debloom.cpp:465:47: warning: format ‘%lld’ expects argument of type ‘long long int’, but argument 4 has type ‘uint64_t’ {aka ‘long unsigned int’} [-Wformat=]
  465 |   fprintf(stderr,"      Total %.2lf MB for %lld solid kmers  ==>  %.2lf bits / solid kmer\n\n", toMB(total_size), nbkmers_solid, total_size / nbkmers_solid);
      |                                            ~~~^                                                                   ~~~~~~~~~~~~~
      |                                               |                                                                   |
      |                                               long long int                                                       uint64_t {aka long unsigned int}
      |                                            %ld
../minia/Debloom.cpp: In function ‘void end_debloom_partition(bool)’:
../minia/Debloom.cpp:29:11: warning: ignoring return value of ‘int ftruncate(int, __off_t)’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
   29 |  ftruncate(fileno(F_debloom_write), 0); //erase previous file
      |  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
g++ -o ../minia/OAHash.o -c ../minia/OAHash.cpp -O3  -lz --std=gnu++0x -DMINIA_IS_IN_PARENT_FOLDER -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>/mapsembler2_extend=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -I/usr/include/hdf5/serial
g++ -o commons.o -c commons.cpp -O3  -lz --std=gnu++0x -DMINIA_IS_IN_PARENT_FOLDER -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>/mapsembler2_extend=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -I/usr/include/hdf5/serial
g++ -o IterativeExtensions.o -c IterativeExtensions.cpp -O3  -lz --std=gnu++0x -DMINIA_IS_IN_PARENT_FOLDER -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>/mapsembler2_extend=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -I/usr/include/hdf5/serial
g++ -o Fragment_Bank.o -c Fragment_Bank.cpp -O3  -lz --std=gnu++0x -DMINIA_IS_IN_PARENT_FOLDER -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>/mapsembler2_extend=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -I/usr/include/hdf5/serial
In file included from Fragment.h:18,
                 from Fragment_Bank.h:3,
                 from Fragment_Bank.cpp:7:
GraphOutput.h:51:11: error: redefinition of ‘struct std::hash<__int128 unsigned>’
   51 |    struct hash<__uint128_t> : public unary_function<__uint128_t, size_t>
      |           ^~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/10/bits/basic_string.h:6757,
                 from /usr/include/c++/10/string:55,
                 from /usr/include/c++/10/bits/locale_classes.h:40,
                 from /usr/include/c++/10/bits/ios_base.h:41,
                 from /usr/include/c++/10/ios:42,
                 from /usr/include/c++/10/ostream:38,
                 from /usr/include/c++/10/iostream:39,
                 from Fragment_Bank.h:1,
                 from Fragment_Bank.cpp:7:
/usr/include/c++/10/bits/functional_hash.h:175:3: note: previous definition of ‘struct std::hash<__int128 unsigned>’
  175 |   _Cxx_hashtable_define_trivial_hash(__GLIBCXX_TYPE_INT_N_0 unsigned)
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
make[2]: *** [makefile:116: Fragment_Bank.o] Error 1
make[2]: Leaving directory '/<<PKGBUILDDIR>>/mapsembler2_extend'
make[1]: *** [debian/rules:28: override_dh_auto_build] Error 2
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
make: *** [debian/rules:23: build] Error 2
dpkg-buildpackage: error: debian/rules build subprocess returned exit status 2



More information about the Debian-med-packaging mailing list