[Buildroot] Toolchain issues on multiple architectures
Thomas Petazzoni
thomas.petazzoni at bootlin.com
Thu Sep 24 18:47:07 UTC 2020
Hello,
On Thu, 24 Sep 2020 11:20:18 -0700
Alistair Francis <alistair23 at gmail.com> wrote:
> > Sorry for the slow feedback. I retested the above defconfig, and it
> > fails to build here. Did you try on the 2020.08 tag, with no change ?
> > Perhaps you tried on master and something fixed this on master after
> > 2020.08 ?
>
> Yep, that doesn't work.
>
> That branch is missing the patches to use upstream glibc:
>
> * acc1330d4a configs/qemu_riscv32_virt: use Linux 5.4 kernel (by
> Alistair Francis 3 weeks ago)
> * a4889545aa package/glibc: use upstream glibc for RISC-V 32-bit (by
> Alistair Francis 3 weeks ago)
>
> Because of that the kernel headers need to be patched to add support
> for a 32-bit time_t.
>
> This change in the defconfig should fix that:
>
> BR2_GLOBAL_PATCH_DIR="board/qemu/riscv32-virt/patches/"
>
> Although it looks like the kernel build is also required to get the
> patches to take effect:
>
> # Kernel
> BR2_LINUX_KERNEL=y
> BR2_LINUX_KERNEL_CUSTOM_VERSION=y
> BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.1.12"
> BR2_LINUX_KERNEL_DEFCONFIG="rv32"
> BR2_LINUX_KERNEL_IMAGE=y
>
> Although applying the two commits mentioned above would be a much better option.
Thanks a lot for the feedback, it makes sense. To me, it illustrates
very well that the solution of having patches for the kernel headers
that only apply to a specific defconfig doesn't work: whenever someone
builds a system from scratch without using a defconfig, such patches
are not applied.
Thomas
--
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
More information about the buildroot
mailing list