Subject: Re: toolchain/33294: rtld regression test failure on ARM
To: None <email@example.com>
From: Nick Hudson <firstname.lastname@example.org>
Date: 09/08/2006 12:05:31
On Thursday 20 April 2006 10:55, Simon Burge wrote:
> >Number: 33294
> >Category: toolchain
> >Synopsis: rtld regression test failure on ARM
> The rtld regression test fails on ARM, with:
> /usr/lib/libstdc++.so.5: Undefined PLT symbol "_Unwind_SjLj_Register"
> (symnum = 1176)
> There are undefined _Unwind_SjLj* symbols in libstdc++.so.5, and
> these symbols are in libgcc_s.so and libgcc_eh.a.
I think we should link regress/usr.bin/rtld/dlopen against libgcc_s.so.
This fails on ARM as it uses SjLj EH which requires the "register" step. If
the RTLD_LAZY in dlopen.c is changed to RTLD_NOW this also fails on other
platforms, e.g. i386. That is, symbols are missing for all platforms, but
some get lucky.