Control: tags -1 + confirmed

Hi Aurelien,

On Fri, Feb 20, 2026 at 11:33:49PM +0100, Aurelien Jarno wrote:
> Source: criu
> Version: 4.2-1
> Severity: important
> Tags: ftbfs upstream
> Justification: fails to build from source
> User: [email protected]
> Usertags: glibc-2.43
> 
> Dear maintainer(s),
> 
> criu fails to build from source with glibc 2.43, currently in
> experimental. From the build log:
> 
> | gcc -c -g -O2 -Werror=implicit-function-declaration 
> -ffile-prefix-map=/build/reproducible-path/criu-4.2=. 
> -fstack-protector-strong -fstack-clash-protection -Wformat 
> -Werror=format-security -mbranch-protection=standard -O2 -g -Wall 
> -Wformat-security -Wdeclaration-after-statement -Wstrict-prototypes 
> -Wno-dangling-pointer -Wno-unknown-warning-option -Werror -DCONFIG_AARCH64 
> -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -D_GNU_SOURCE 
> -DCONFIG_HAS_LIBBSD -DCONFIG_GNUTLS -DCONFIG_HAS_NFTABLES_LIB_API_1 -iquote 
> include/ -DCONFIG_HAS_LIBBSD -DCONFIG_GNUTLS -DCONFIG_HAS_NFTABLES_LIB_API_1 
> -I ./compel/include/uapi -fno-strict-aliasing -iquote criu/include -iquote 
> include -iquote images -iquote criu/arch/aarch64/include -iquote . 
> -I/usr/include/libnl3 -DSYSCONFDIR='"/etc"' 
> -DGLOBAL_CONFIG_DIR='"/etc/criu/"' -DDEFAULT_CONFIG_FILENAME='"default.conf"' 
> -DUSER_CONFIG_DIR='".criu/"' criu/tty.c -o criu/tty.o
> | criu/tty.c: In function ‘pts_fd_get_index’:
> | criu/tty.c:262:21: error: initialization discards ‘const’ qualifier from 
> pointer target type [-Werror=discarded-qualifiers]
> |   262 |         char *pos = strrchr(link->name, '/');
> |       |                     ^~~~~~~
> | At top level:
> | cc1: note: unrecognized command-line option ‘-Wno-unknown-warning-option’ 
> may have been intended to silence earlier diagnostics
> | cc1: all warnings being treated as errors
> | make[4]: *** 
> [/build/reproducible-path/criu-4.2/scripts/nmk/scripts/build.mk:119: 
> criu/tty.o] Error 1
> | make[3]: *** [criu/Makefile:76: criu/built-in.o] Error 2
> | make[2]: *** [Makefile:278: criu] Error 2
> | make[2]: Leaving directory '/build/reproducible-path/criu-4.2'
> | make[1]: *** [debian/rules:20: override_dh_auto_build] Error 2
> | make[1]: Leaving directory '/build/reproducible-path/criu-4.2'
> | make: *** [debian/rules:14: binary] Error 2
> | dpkg-buildpackage: error: debian/rules binary subprocess failed with exit 
> status 2
> 
> The full build log is available here [1].
> 
> The issue is due to ISO C23 declaration of bsearch, memchr, strchr,
> strpbrk, strrchr, strstr, wcschr, wcspbrk, wcsrchr, wcsstr and wmemchr,
> which now returns a pointer to a const-qualified type when the input
> argument is a pointer to a const-qualified type [2].
> 
> I would like to thanks Emanuele Rocca for doing the archive rebuild on
> a fast arm64 server.

Thanks for the report, this should be fixed with
https://github.com/checkpoint-restore/criu/commit/90300748effc1cf0fe56e35d3d1cc2ddfedab246

Depends on how fast you want things to be ready for unstable I can
cherry-pick it in advance before upstream releases a new version.

Regards,
Salvatore

Reply via email to