arm-oabi and mips and such not building for me with NPTL.

Rob Landley rob at landley.net
Sat Mar 19 03:18:31 UTC 2011


On 03/18/2011 09:51 AM, Peter Mazinger wrote:
> Hi Rob
> 
>> So the NPTL versions of i686 and arm-eabi build with the same invocation
>> pthreads.old used, but none of the other targets I've tried do.  Instead
>> those fail with:
>>
>> libpthread/nptl/libpthread_so.a(pthread_once.oS): In function
>> `__pthread_once_internal':
>> pthread_once.c:(.text+0x78): undefined reference to
>> `_Unwind_SjLj_Register'
>> libpthread/nptl/libpthread_so.a(pthread_once.oS): In function `.L15':
>> pthread_once.c:(.text+0x164): undefined reference to `_Unwind_SjLj_Resume'
>> pthread_once.c:(.text+0x16c): undefined reference to
>> `_Unwind_SjLj_Unregister'
>> pthread_once.c:(.text+0x180): undefined reference to
>> `__gcc_personality_sj0'
>> collect2: ld returned 1 exit status
> 
> if that is missing from libgcc*, you might want to compile gcc with
> --enable-sjlj-exceptions
> 
> Peter

The solution is actually to _remove_ --enable-sjlj-exceptions from the
gcc ./configure line.  Apparently uClibc no longer supports that with
nptl, only with pthreads.  Mips builds fine with dwarf exceptions,
trying the other targets now.

(This should probably be noted somewhere.  Once upon a time uClibc
supported sjlj only.)

Rob


More information about the uClibc mailing list