mirror of
https://gitlab.com/buildroot.org/buildroot.git
synced 2026-08-18 21:33:39 -09:00
a903cce65c874e091613919187fdb75358eb5322
As reported on the mailing list [1] while investigating the TestZfsUclibc Gitlab-CI failure, the python 3.13 interpreter itsef segfault at runtime: Fatal Python error: _PyThreadState_Attach: non-NULL old thread state Python runtime state: preinitialized Thread 0xSegmentation fault This issue is related to the python 3.13 version bump [2] were several internal changes were added [3] to support PEP 703 [4]. PEP 793 is about CPython’s global interpreter lock (“GIL”) removal for multi-threads support that requires a working C11 "thread_local" for thread-local storage [5]. The new uclibc-ng 1.0.55 release contains a fix for this issue [6]. This version is included in Buildroot commit [7]. Since the prebuilt Bootling aarch64 uclibc stable 2025.08-1 is based on previous uClibc-ng release (1.0.54) we have to use the internal toolchain backend to build a new uClibc-ng toolchain using uclibc-ng 1.0.55. Note: the toolchain config defined in this commit reflects the options enabled in the Bootling aarch64 uclibc external toolchains. Fixes: https://gitlab.com/buildroot.org/buildroot/-/jobs/11271124859 (TestZfsUclibc) [1] https://lore.kernel.org/buildroot/7a4d245d-1556-43c9-8997-6b1f791afbfe@gmail.com/ (TestZfsUclibc) [2]d63e207eb8[3]6e97a9647a[4] https://peps.python.org/pep-0703/ [5] https://gcc.gnu.org/onlinedocs/gcc-15.1.0/gcc/Thread-Local.html [6]94c1297d52[7]5250bba8e5Cc: José Luis Salvador Rufo <salvador.joseluis@gmail.com> Tested-by: José Luis Salvador Rufo <salvador.joseluis@gmail.com> Cc: Waldemar Brodkorb <wbx@openadk.org> Signed-off-by: Romain Naour <romain.naour@smile.fr> [Julien: - add link to buildroot commit updating uclibc-ng to 1.0.55 - add a note in the commit log about the toolchain config ] Signed-off-by: Julien Olivain <ju.o@free.fr> (cherry picked from commit5208b7a1bd) Signed-off-by: Thomas Perale <thomas.perale@mind.be>
…
…
…
Buildroot is a simple, efficient and easy-to-use tool to generate embedded Linux systems through cross-compilation. The documentation can be found in docs/manual. You can generate a text document with 'make manual-text' and read output/docs/manual/manual.text. Online documentation can be found at http://buildroot.org/docs.html To build and use the buildroot stuff, do the following: 1) run 'make menuconfig' 2) select the target architecture and the packages you wish to compile 3) run 'make' 4) wait while it compiles 5) find the kernel, bootloader, root filesystem, etc. in output/images You do not need to be root to build or run buildroot. Have fun! Buildroot comes with a basic configuration for a number of boards. Run 'make list-defconfigs' to view the list of provided configurations. Please feed suggestions, bug reports, insults, and bribes back to the buildroot mailing list: buildroot@buildroot.org You can also find us on #buildroot on OFTC IRC. If you would like to contribute patches, please read https://buildroot.org/manual.html#submitting-patches
Description
Languages
Makefile
62.6%
Python
18.8%
C
8.5%
Shell
6.1%
PHP
1.4%
Other
2.2%