[Debian-med-packaging] Bug#984226: mapsembler2: ftbfs with GCC-11

Matthias Klose doko at debian.org
Wed Mar 3 16:15:21 GMT 2021


Package: src:mapsembler2
Version: 2.2.4+dfsg1-3
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/mapsembler2_2.2.4+dfsg1-3_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.

[...]
In file included from /usr/include/string.h:495,
                 from Fragment.h:2,
                 from DeBruijnGraph.h:8,
                 from DeBruijnGraph.cpp:8:
In function ‘char* strncpy(char*, const char*, size_t)’,
    inlined from ‘void DBG::_ZN3DBG15set_firstNodeIdEPc.part.0(char*)’ at DeBruijnGraph.cpp:373:29:
/usr/include/x86_64-linux-gnu/bits/string_fortified.h:106:34: warning: ‘char* __builtin_strncpy(char*, const char*, long unsigned int)’ specified bound depends on the length of the source argument [-Wstringop-overflow=]
  106 |   return __builtin___strncpy_chk (__dest, __src, __len, __bos (__dest));
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
DeBruijnGraph.cpp: In member function ‘void DBG::_ZN3DBG15set_firstNodeIdEPc.part.0(char*)’:
DeBruijnGraph.cpp:373:43: note: length computed here
  373 |                 if(set_line!=NULL) strncpy(set_line,firstNodeId,strlen(firstNodeId));
      |                                    ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
g++ -o read_coherence_mapsembler/list.o -c read_coherence_mapsembler/list.cpp -O3 -L../thirdparty/zlib/build -lz -DMINIA_IS_IN_PARENT_FOLDER -D_FILE_OFFSET_BITS=64 -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>/kissreads_graph=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -I/usr/include/hdf5/serial -O3 -lz -DMINIA_IS_IN_PARENT_FOLDER -D_FILE_OFFSET_BITS=64
g++ -o read_coherence_mapsembler/read_coherence.o -c read_coherence_mapsembler/read_coherence.cpp -O3 -L../thirdparty/zlib/build -lz -DMINIA_IS_IN_PARENT_FOLDER -D_FILE_OFFSET_BITS=64 -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>/kissreads_graph=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -I/usr/include/hdf5/serial -O3 -lz -DMINIA_IS_IN_PARENT_FOLDER -D_FILE_OFFSET_BITS=64
read_coherence_mapsembler/read_coherence.cpp: In function ‘char** read_coherent_homologs(hash_t, const char*, int, int, int, int, int*)’:
read_coherence_mapsembler/read_coherence.cpp:988:39: warning: format ‘%X’ expects argument of type ‘unsigned int’, but argument 3 has type ‘group_t’ {aka ‘list_*’} [-Wformat=]
  988 |                         "error group %X: recomputed number of substitutions (%d) not matching dynamic number of substitutions (%d) (so i'm glad i coded this test)\n fragment: %s\nconsensus:%s\n",
      |                                      ~^
      |                                       |
      |                                       unsigned int
  989 |                         current_read_group, number_substitutions,
      |                         ~~~~~~~~~~~~~~~~~~
      |                         |
      |                         group_t {aka list_*}
read_coherence_mapsembler/read_coherence.cpp:1002:39: warning: format ‘%X’ expects argument of type ‘unsigned int’, but argument 3 has type ‘group_t’ {aka ‘list_*’} [-Wformat=]
 1002 |                         "error group %X: recomputed consensus (%s) not matching dynamic consensus (%s) (so i'm glad i coded this test)\n fragment: %s\n",
      |                                      ~^
      |                                       |
      |                                       unsigned int
 1003 |                         current_read_group, substarters[*nb_consensuses],
      |                         ~~~~~~~~~~~~~~~~~~
      |                         |
      |                         group_t {aka list_*}
g++ -o read_coherence_mapsembler/interface_libchash.o -c read_coherence_mapsembler/interface_libchash.cpp -O3 -L../thirdparty/zlib/build -lz -DMINIA_IS_IN_PARENT_FOLDER -D_FILE_OFFSET_BITS=64 -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>/kissreads_graph=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -I/usr/include/hdf5/serial -O3 -lz -DMINIA_IS_IN_PARENT_FOLDER -D_FILE_OFFSET_BITS=64
read_coherence_mapsembler/interface_libchash.cpp: In function ‘void hash_clear(hash_t, void (*)(const void*))’:
read_coherence_mapsembler/interface_libchash.cpp:134:23: error: ordered comparison of pointer with integer zero (‘hash_iter’ {aka ‘long int*’} and ‘int’)
  134 |          if (iterator < 0)
      |              ~~~~~~~~~^~~
read_coherence_mapsembler/interface_libchash.cpp: In function ‘int hash_delete(hash_t, void (*)(const void*))’:
read_coherence_mapsembler/interface_libchash.cpp:169:23: error: ordered comparison of pointer with integer zero (‘hash_iter’ {aka ‘long int*’} and ‘int’)
  169 |          if (iterator < 0)
      |              ~~~~~~~~~^~~
In file included from read_coherence_mapsembler/interface_libchash.cpp:48:
read_coherence_mapsembler/interface_libchash.cpp: In function ‘ssize_t hash_iterator_return_entry(hash_t, hash_iter, char**, void**)’:
read_coherence_mapsembler/interface_libchash.cpp:272:21: error: ordered comparison of pointer with integer zero (‘hash_iter’ {aka ‘long int*’} and ‘int’)
  272 |         assert(iter >= 0);
      |                ~~~~~^~~~
read_coherence_mapsembler/interface_libchash.cpp: In function ‘void iterate_and_fill_offsets(hash_t)’:
read_coherence_mapsembler/interface_libchash.cpp:408:36: warning: format ‘%lli’ expects argument of type ‘long long int’, but argument 2 has type ‘uint64_t’ {aka ‘long unsigned int’} [-Wformat=]
  408 |     printf("total nb diff seeds %lli  (should use %lli MB) \n",nbdiffseeds,(nbdiffseeds*16)/1024/1024);
      |                                 ~~~^                           ~~~~~~~~~~~
      |                                    |                           |
      |                                    long long int               uint64_t {aka long unsigned int}
      |                                 %li
read_coherence_mapsembler/interface_libchash.cpp:408:54: warning: format ‘%lli’ expects argument of type ‘long long int’, but argument 3 has type ‘uint64_t’ {aka ‘long unsigned int’} [-Wformat=]
  408 |     printf("total nb diff seeds %lli  (should use %lli MB) \n",nbdiffseeds,(nbdiffseeds*16)/1024/1024);
      |                                                   ~~~^                     ~~~~~~~~~~~~~~~~~~~~~~~~~~
      |                                                      |                                          |
      |                                                      long long int                              uint64_t {aka long unsigned int}
      |                                                   %li
g++ -o commons.o -c commons.cpp -O3 -L../thirdparty/zlib/build -lz -DMINIA_IS_IN_PARENT_FOLDER -D_FILE_OFFSET_BITS=64 -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>/kissreads_graph=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -I/usr/include/hdf5/serial -O3 -lz -DMINIA_IS_IN_PARENT_FOLDER -D_FILE_OFFSET_BITS=64
make[2]: *** [makefile:58: read_coherence_mapsembler/interface_libchash.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[2]: Leaving directory '/<<PKGBUILDDIR>>/kissreads_graph'
dh_auto_build: error: cd kissreads_graph && make -j4 "INSTALL=install --strip-program=true" k=29 returned exit code 2
make[1]: *** [debian/rules:29: override_dh_auto_build] Error 25
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
make: *** [debian/rules:23: binary] Error 2
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2



More information about the Debian-med-packaging mailing list