[R-pkg-team] Bug#1128847: r-cran-later: FTBFS with glibc 2.43 due to once_flag symbol collision

Aurelien Jarno aurel32 at debian.org
Mon Feb 23 17:08:33 GMT 2026


Source: r-cran-later
Version: 1.4.6+dfsg-1
Severity: important
Tags: ftbfs upstream
Justification: fails to build from source
User: debian-glibc at lists.debian.org
Usertags: glibc-2.43

Dear maintainer(s),

r-cran-later fails to build from source with glibc 2.43, currently in
experimental. From the build log:

| gcc -I"/usr/share/R/include" -DNDEBUG -pthread -DSTRICT_R_HEADERS -DRCPP_NO_MODULES  -I'/usr/lib/R/site-library/Rcpp/include'     -fPIC  -g -O2 -ffile-prefix-map=/build/reproducible-path/r-base-4.5.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2  -c tinycthread.c -o tinycthread.o
| In file included from tinycthread.c:25:
| tinycthread.h:471:21: error: conflicting types for ‘pthread_once_t’; have ‘__once_flag’
|   471 |   #define once_flag pthread_once_t
|       |                     ^~~~~~~~~~~~~~
| In file included from /usr/include/pthread.h:26,
|                  from tinycthread.h:98:
| /usr/include/aarch64-linux-gnu/bits/pthreadtypes.h:53:30: note: previous declaration of ‘pthread_once_t’ with type ‘pthread_once_t’ {aka ‘int’}
|    53 | typedef int __ONCE_ALIGNMENT pthread_once_t;
|       |                              ^~~~~~~~~~~~~~
| make[1]: *** [/usr/lib/R/etc/Makeconf:202: tinycthread.o] Error 1
| make[1]: Leaving directory '/build/reproducible-path/r-cran-later-1.4.6+dfsg/src'
| make[1]: Entering directory '/build/reproducible-path/r-cran-later-1.4.6+dfsg/src'
| make[1]: Leaving directory '/build/reproducible-path/r-cran-later-1.4.6+dfsg/src'
| ERROR: compilation failed for package ‘later’
| * removing ‘/build/reproducible-path/r-cran-later-1.4.6+dfsg/debian/r-cran-later/usr/lib/R/site-library/later’
| dh_auto_install: error: R CMD INSTALL -l /build/reproducible-path/r-cran-later-1.4.6\+dfsg/debian/r-cran-later/usr/lib/R/site-library --clean . --built-timestamp="'Tue, 17 Feb 2026 10:30:53 +0900'" returned exit code 1
| make: *** [debian/rules:4: binary] Error 25
| 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 the definition of once_flag in stdlib.h in addition
to threads.h as part of ISO C23 [2]. I believe that the issue is fixed
upstream [3], but I haven't tested the patch.

I would like to thanks Emanuele Rocca for doing the archive rebuild on a
fast arm64 server.

Regards
Aurelien

[1] https://people.debian.org/~ema/glibc-2.43-rebuilds/output-1/r-cran-later_arm64.build
[2] https://sourceware.org/git/?p=glibc.git;a=commit;h=a7ddbf456d97ac8d1aa7afd735e196a1488bd874
[3] https://github.com/r-lib/later/commit/912513941924a13012e71add224fe5285f8799fc 

-- 
Aurelien Jarno                          GPG: 4096R/1DDD8C9B
aurelien at aurel32.net                     http://aurel32.net



More information about the R-pkg-team mailing list