mirror of
https://gitlab.com/buildroot.org/buildroot.git
synced 2026-09-08 23:51:08 -09:00
bf952b0cb7d10361389984027019161d46da105f
Commita8be4a04ad"support/config-fragments: replace br-i386-pentium-mmx-musl" replaced this old toolchain by bootlin-x86-i686-musl. When using test-pkg with all toolchains, bootlin-x86-i686-musl is always failing. The issue can be reproduced with for example: utils/test-pkg -a -p busybox The issue can also be reproduced with a simple config like: cat > .config <<EOF BR2_i386=y BR2_TOOLCHAIN_EXTERNAL=y BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_I686_MUSL_STABLE=y BR2_PACKAGE_BUSYBOX=y EOF make olddefconfig make Compilation fail with output: Cannot execute cross-compiler '/i586-linux-gcc' This issue happen is because the toolchain can never be selected. The config fragment [1] selects BR2_i386 alone. The target architecture variant default to i586 if target architecture is i386. See [2]. Finally, the generated toolchain options includes a depends on BR2_i386 and !BR2_x86_i586, making the toolchain always ignored. See [3]. This commit fixes the issue by adding BR2_x86_i686=y to the bootlin-x86-i686-musl.config fragment as suggested by the Bootlin toolchain fragment [4]. [1]a8be4a04ad/support/config-fragments/autobuild/bootlin-x86-i686-musl.config[2] https://gitlab.com/buildroot.org/buildroot/-/blob/2024.02.2/arch/Config.in.x86?ref_type=tags#L38 [3] https://gitlab.com/buildroot.org/buildroot/-/blob/345ccb523e/toolchain/toolchain-external/toolchain-external-bootlin/Config.in.options#L5768-5770 [4] https://toolchains.bootlin.com/downloads/releases/toolchains/x86-i686/fragments/x86-i686--musl--stable-2024.02-1.frag Signed-off-by: Julien Olivain <ju.o@free.fr> [Romain: add the link to the Bootlin toolchain fragment] Signed-off-by: Romain Naour <romain.naour@smile.fr> (cherry picked from commit1263adf7a9) Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
…
…
…
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.5%
Python
19%
C
8.5%
Shell
6.1%
PHP
1.4%
Other
2.1%