Just to update everyone here - I have worked around our compiler issue using a linker script
The 2nd issue (efibootguard binary missing from the 1st partition): it must have been a local issue. The binary was found present after running a clean build. On Tuesday, September 5, 2017 at 4:36:37 PM UTC+2, Cedric Hombourger wrote: > > Could very well be - I am checking with our tools team in parallel. They > seem to be suggesting that the sourcery toolchain is indeed configured to > use ctors/dtors instead init/fini > > On 5 September 2017 at 16:14, Jan Kiszka <[email protected]> wrote: > >> On 2017-09-05 15:46, Jan Kiszka wrote: >> > On 2017-09-05 15:31, Cedric Hombourger wrote: >> >> Hello, >> >> >> >> I tried to use efibootguard on the Siemens IOT2020 but using Mentor >> >> Embedded Linux (instead of Yocto). >> >> I used the meta-efibootguard layer that Andreas kindly posted last >> week. >> >> >> >> efibootguard was built and shows its prompt but it is then unable to >> >> find a supported watchdog device >> >> (see below for a boot log) >> >> >> >> I eventually traced this problem to be a difference in the compiler >> output. >> >> The init() function of the driver is expected to be registered in the >> >> .init_array section >> >> >> >> This is definitely the case with GCC 6.3 >> >> It unfortunately isn't with GCC 6.2. >> >> >> >> I checked this by compiling a single line compilation unit: >> >> void __attribute__ ((constructor)) test (void) {} >> >> >> >> readelf shows an .init_array with 6.3 but I get a .ctors section with >> 6.2 >> > >> > Thanks for analysing. Interestingly, I can reproduce with gcc 4.8.5 of >> > my distro. Neither is init_array empty nor is there a ctors section. Is >> > there some switch that controls this? >> >> Actually, morty is using 6.2 as well, and we never saw this issue. Could >> it be that MEL-specific gcc patches cause that? Maybe you added >> something to stay backward compatible. And maybe that something gives >> the compiler user control over which ABI is used so that you only need >> to append some switch to the recipe. >> >> Jan >> >> -- >> Siemens AG, Corporate Technology, CT RDA ITP SES-DE >> Corporate Competence Center Embedded Linux >> > > -- You received this message because you are subscribed to the Google Groups "EFI Boot Guard" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/efibootguard-dev/137010fa-a098-40f1-913c-c1e779e12b4f%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.
