Sam Edwards <cfswo...@gmail.com> schrieb am Mo., 24. Feb. 2025, 06:56:
> This was not proper: A .text section is SHT_PROGBITS, while the .dynamic > section is SHT_DYNAMIC. Attempting to combine them like this creates a > section type mismatch. > > It seems that while GNU ld does not complain, LLVM's lld considers this > an error. > > Signed-off-by: Sam Edwards <cfswo...@gmail.com> > Cc: Heinrich Schuchardt <heinrich.schucha...@canonical.com> > --- > lib/efi_loader/elf_efi.ldsi | 6 +++--- > 1 file changed, 3 insertions(+), 3 deletions(-) > > diff --git a/lib/efi_loader/elf_efi.ldsi b/lib/efi_loader/elf_efi.ldsi > index dc4d1a3660e..acf02eba4d6 100644 > --- a/lib/efi_loader/elf_efi.ldsi > +++ b/lib/efi_loader/elf_efi.ldsi > @@ -20,10 +20,10 @@ SECTIONS > *(.gnu.linkonce.t.*) > *(.srodata) > *(.rodata*) > - . = ALIGN(16); > - *(.dynamic); > - . = ALIGN(512); > } > + . = ALIGN(16); > + .dynamic : { *(.dynamic) } > .dynamic is related to dynamic linking of libraries. Under which circumstances would we have content in .dynamic? Why would it be needed for executing an EFI application? Best regards Heinrich + . = ALIGN(512); > .rela.dyn : { *(.rela.dyn) } > .rela.plt : { *(.rela.plt) } > .rela.got : { *(.rela.got) } > -- > 2.45.2 > >