[Debian-med-packaging] Bug#1097352: mafft: ftbfs with GCC-15
Matthias Klose
doko at debian.org
Mon Feb 17 17:36:17 GMT 2025
Package: src:mafft
Version: 7.505-1
Severity: important
Tags: sid forky
User: debian-gcc at lists.debian.org
Usertags: ftbfs-gcc-15
[This bug is NOT targeted to the upcoming trixie 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-15/g++-15, but succeeds to build with gcc-14/g++-14. The
severity of this report will be raised before the forky release.
The full build log can be found at:
http://qa-logs.debian.net/2025/02/16/amd64exp/mafft_7.505-1_unstable_gccexp.log.gz
The last lines of the build log are at the end of this report.
To build with GCC 15, either set CC=gcc-15 CXX=g++-15 explicitly,
or install the gcc, g++, gfortran, ... packages from experimental.
apt-get -t=experimental install g++
GCC 15 now defaults to the C23/C++23 standards, exposing many FTBFS.
Other 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-15/porting_to.html
[...]
| ^~~~~~~~~
functions.h:85:12: error: conflicting types for ‘fastconjuction’; have ‘int(int *, char **, char **, double *, double *, char (*)[256], char (*)[256], char *)’
85 | extern int fastconjuction( int *memlist, char **seq, char **aseq, double *peff, double *eff, char name[M][B], char aname[M][B], char *d );
| ^~~~~~~~~~~~~~
mltaln.h:198:12: note: previous declaration of ‘fastconjuction’ with type ‘int(void)’
198 | extern int fastconjuction();
| ^~~~~~~~~~~~~~
functions.h:150:15: error: conflicting types for ‘A__align’; have ‘double(double **, int, int, char **, char **, double *, double *, int, int, int, int, double *, char *, char *, char *, char *, int *, int, int *, int, int, int, int, double ***, double ***, double ***, double, double)’
150 | extern double A__align( double **scoringmtx, int penalty, int penalty_ex, char **seq1, char **seq2, double *eff1, double *eff2, int icyc, int jcyc, int alloclen, int constraint, double *impmatch, char *gs1, char *gs2, char *ge1, char *ge2, int *, int, int *, int headgp, int tailgp, int firstmem, int calledby, double ***cpmxchild0, double ***cpmxchild1, double ***cpmxresult, double orieff1, double orieff2 );
| ^~~~~~~~
mltaln.h:182:15: note: previous declaration of ‘A__align’ with type ‘double(void)’
182 | extern double A__align();
| ^~~~~~~~
functions.h:152:15: error: conflicting types for ‘A__align_gapmap’; have ‘double(char **, char **, double *, double *, int, int, int, int, double *, int *, int *)’
152 | extern double A__align_gapmap( char **seq1, char **seq2, double *eff1, double *eff2, int icyc, int jcyc, int alloclen, int constraint, double *impmatch, int *gapmap1, int *gapmap2 );
| ^~~~~~~~~~~~~~~
mltaln.h:184:15: note: previous declaration of ‘A__align_gapmap’ with type ‘double(void)’
184 | extern double A__align_gapmap();
| ^~~~~~~~~~~~~~~
functions.h:153:15: error: conflicting types for ‘translate_and_Calign’; have ‘double(char **, char **, double *, double *, int, int, int)’
153 | extern double translate_and_Calign( char **mseq1, char **mseq2, double *effarr1, double *effarr2, int clus1, int clus2, int alloclen );
| ^~~~~~~~~~~~~~~~~~~~
mltaln.h:181:15: note: previous declaration of ‘translate_and_Calign’ with type ‘double(void)’
181 | extern double translate_and_Calign();
| ^~~~~~~~~~~~~~~~~~~~
functions.h:155:15: error: conflicting types for ‘Falign’; have ‘double(int **, double ***, double **, char **, char **, double *, double *, double **, double **, int, int, int, int *, int *, int, int *)’
155 | extern double Falign( int **whichmtx, double ***scoringmatrices, double **scoreingmtx, char **seq1, char **seq2, double *eff1, double *eff2, double **eff1s, double **eff2s, int clus1, int clus2, int alloclen, int *fftlog, int *, int, int * );
| ^~~~~~
mltaln.h:188:15: note: previous declaration of ‘Falign’ with type ‘double(void)’
188 | extern double Falign();
| ^~~~~~
functions.h:158:8: error: conflicting types for ‘Falign_localhom’; have ‘double(int **, double ***, double **, char **, char **, double *, double *, double **, double **, int, int, int, int, double *, int *, int *, int *, int, int *)’
158 | double Falign_localhom( int **which, double ***scoringmatrices, double **scoreingmtx, char **seq1, char **seq2, double *eff1, double *eff2, double **eff1s, double **eff2s, int clus1, int clus2, int alloclen, int constraint, double *totalimpmatch, int *gapmap1, int *gapmap2, int *chudanpt, int chudanref, int *chudanres );
| ^~~~~~~~~~~~~~~
mltaln.h:189:15: note: previous declaration of ‘Falign_localhom’ with type ‘double(void)’
189 | extern double Falign_localhom();
| ^~~~~~~~~~~~~~~
functions.h:162:15: error: conflicting types for ‘partA__align’; have ‘double(char **, char **, double *, double *, int, int, int, int, double *, int, int, int, int, int *, int *, char *, char *, char *, char *, int *, int, int *)’
162 | extern double partA__align( char **seq1, char **seq2, double *eff1, double *eff2, int icyc, int jcyc, int alloclen, int constraint, double *impmatch, int start1, int end1, int start2, int end2, int *gapmap1, int *gapmap2, char *, char *, char *, char *, int *, int, int * );
| ^~~~~~~~~~~~
mltaln.h:185:15: note: previous declaration of ‘partA__align’ with type ‘double(void)’
185 | extern double partA__align();
| ^~~~~~~~~~~~
functions.h:164:15: error: conflicting types for ‘G__align11’; have ‘double(double **, char **, char **, int, int, int)’
164 | extern double G__align11( double **scoringmtx, char **seq1, char **seq2, int alloclen, int headgp, int tailgp );
| ^~~~~~~~~~
mltaln.h:187:15: note: previous declaration of ‘G__align11’ with type ‘double(void)’
187 | extern double G__align11();
| ^~~~~~~~~~
functions.h:190:13: error: conflicting types for ‘ErrorExit’; have ‘void(char *)’
190 | extern void ErrorExit( char *message );
| ^~~~~~~~~
mltaln.h:194:13: note: previous declaration of ‘ErrorExit’ with type ‘void(void)’
194 | extern void ErrorExit();
| ^~~~~~~~~
gcc -Denablemultithread -std=c99 -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/mafft-7.505=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -c replaceu.c
functions.h:271:13: error: conflicting types for ‘constants’; have ‘void(int, char **)’
271 | extern void constants( int nseq, char **seq );
| ^~~~~~~~~
mltaln.h:168:13: note: previous declaration of ‘constants’ with type ‘void(void)’
168 | extern void constants();
| ^~~~~~~~~
make[2]: *** [<builtin>: filter.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[2]: Leaving directory '/build/reproducible-path/mafft-7.505/core'
dh_auto_build: error: cd core && make -j8 "INSTALL=install --strip-program=true" PREFIX=/usr/lib/mafft ENABLE_MULTITHREAD=-Denablemultithread LIBDIR=/usr/lib/mafft/lib/mafft "CFLAGS=-g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/mafft-7.505=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2" "LDFLAGS=-Wl,-z,relro -Wl,-z,now" returned exit code 2
make[1]: *** [debian/rules:14: override_dh_auto_build] Error 25
make[1]: Leaving directory '/build/reproducible-path/mafft-7.505'
make: *** [debian/rules:11: binary] Error 2
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2
More information about the Debian-med-packaging
mailing list