Problem with relro and thread synchronization on ARM?
Hi
During the ARM ports Bof at DebConf15, we (Paul Gevers and I)
mentioned an issue we were experiencing with fpc/lazarus builds on
ARM.
We have now found that the problem is related to the '-z relro' hardening flag.
If we build Lazarus with the Debian default hardening flags, which
include '-z relro', then lazbuild appears to stall.
If we rebuild Lazarus and filter out '-z relro' from the linker flags,
lazbuild works as expected.
I would appreciate if you have any ideas why relro could cause the
call from around line 510 in Lazarus' ide/exttools.pas to never
return:
Thread.Synchronize(Thread,@NotifyHandlerNewOutput);
The issue was reported in bug #793991 [1] and forwarded upstream [2].
Regards
Graham
[1] https://bugs.debian.org/793991
[2] http://bugs.freepascal.org/view.php?id=28448
Reply to: