Bug#1097277: libterm-readline-gnu-perl: ftbfs with GCC-15

Matthias Klose doko at debian.org
Mon Feb 17 17:34:03 GMT 2025


Package: src:libterm-readline-gnu-perl
Version: 1.46-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/libterm-readline-gnu-perl_1.46-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

[...]
LOGNAME=user42
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games
SHELL=/bin/sh
USER=user42

dpkg-buildpackage
-----------------

Command: dpkg-buildpackage --sanitize-env -us -uc -b
dpkg-buildpackage: info: source package libterm-readline-gnu-perl
dpkg-buildpackage: info: source version 1.46-1
dpkg-buildpackage: info: source distribution unstable
dpkg-buildpackage: info: source changed by gregor herrmann <gregoa at debian.org>
 dpkg-source --before-build .
dpkg-buildpackage: info: host architecture amd64
 debian/rules clean
dh clean
   dh_clean
 debian/rules binary
dh binary
   dh_update_autotools_config
   dh_autoreconf
   dh_auto_configure
	/usr/bin/perl Makefile.PL INSTALLDIRS=vendor "OPTIMIZE=-g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/libterm-readline-gnu-perl-1.46=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2" "LD=x86_64-linux-gnu-gcc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/libterm-readline-gnu-perl-1.46=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wl,-z,relro -Wl,-z,now"
<<<It seems that you have the GNU Readline Library version 8.2.>>>
Checking if your kit is complete...
Looks good
Generating a Unix-style Makefile
Writing Makefile for Term::ReadLine::Gnu
Writing MYMETA.yml and MYMETA.json
   dh_auto_build
	make -j8
make[1]: Entering directory '/build/reproducible-path/libterm-readline-gnu-perl-1.46'
Running Mkbootstrap for Gnu ()
"/usr/bin/perl" "/usr/share/perl/5.40/ExtUtils/xsubpp"  -typemap '/usr/share/perl/5.40/ExtUtils/typemap' -typemap '/build/reproducible-path/libterm-readline-gnu-perl-1.46/typemap'  Gnu.xs > Gnu.xsc
chmod 644 "Gnu.bs"
"/usr/bin/perl" -MExtUtils::Command::MM -e 'cp_nonempty' -- Gnu.bs blib/arch/auto/Term/ReadLine/Gnu/Gnu.bs 644
cp Gnu/XS.pm blib/lib/Term/ReadLine/Gnu/XS.pm
AutoSplitting blib/lib/Term/ReadLine/Gnu/XS.pm (blib/lib/auto/Term/ReadLine/Gnu/XS)
blib/lib/Term/ReadLine/Gnu/XS.pm: some names are not unique when truncated to 8 characters:
 directory blib/lib/auto/Term/ReadLine/Gnu/XS:
  rl_bind_key.al, rl_bind_key_if_unbound.al, rl_bind_keyseq.al, rl_bind_keyseq_if_unbound.al truncate to rl_bind_
  rl_set_keymap.al, rl_set_key.al truncate to rl_set_k
cp Gnu.pm blib/lib/Term/ReadLine/Gnu.pm
mv Gnu.xsc Gnu.c
x86_64-linux-gnu-gcc -c   -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/libterm-readline-gnu-perl-1.46=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2   -DVERSION=\"1.46\" -DXS_VERSION=\"1.46\" -fPIC "-I/usr/lib/x86_64-linux-gnu/perl/5.40/CORE"  -DTRG_READLINE_VERSION=0x0802 Gnu.c
Gnu.xs:625:5: error: initialization of ‘int (**)(void)’ from incompatible pointer type ‘int (**)(FILE *)’ [-Wincompatible-pointer-types]
  625 |   { &rl_getc_function,  rl_getc, getc_function_wrapper, NULL }, /* 2 */
      |     ^
Gnu.xs:625:5: note: (near initialization for ‘fn_tbl[2].rlfuncp’)
Gnu.xs:625:25: error: initialization of ‘int (*)(void)’ from incompatible pointer type ‘int (*)(FILE *)’ [-Wincompatible-pointer-types]
  625 |   { &rl_getc_function,  rl_getc, getc_function_wrapper, NULL }, /* 2 */
      |                         ^~~~~~~
Gnu.xs:625:25: note: (near initialization for ‘fn_tbl[2].defaultfn’)
In file included from Gnu.xs:29:
/usr/include/readline/readline.h:451:12: note: ‘rl_getc’ declared here
  451 | extern int rl_getc (FILE *);
      |            ^~~~~~~
Gnu.xs:625:34: error: initialization of ‘int (*)(void)’ from incompatible pointer type ‘int (*)(PerlIOl **)’ {aka ‘int (*)(struct _PerlIO **)’} [-Wincompatible-pointer-types]
  625 |   { &rl_getc_function,  rl_getc, getc_function_wrapper, NULL }, /* 2 */
      |                                  ^~~~~~~~~~~~~~~~~~~~~
Gnu.xs:625:34: note: (near initialization for ‘fn_tbl[2].wrapper’)
Gnu.xs:583:12: note: ‘getc_function_wrapper’ declared here
  583 | static int getc_function_wrapper (PerlIO *);
      |            ^~~~~~~~~~~~~~~~~~~~~
make[1]: *** [Makefile:354: Gnu.o] Error 1
make[1]: Leaving directory '/build/reproducible-path/libterm-readline-gnu-perl-1.46'
dh_auto_build: error: make -j8 returned exit code 2
make: *** [debian/rules:9: binary] Error 25
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2



More information about the pkg-perl-maintainers mailing list