2008/10/6 Carmelo AMOROSO <[EMAIL PROTECTED]>

> Which is the target file format used to build uclibc.
> I'm not so aware of not elf format... if I guess correctly sh2a doesn't use
> elf format (as from -Wl,-elf2flt).
>
indeed
"UCLIBC_FORMAT_FLAT=y "


>
>> If I build with "Support global constructors and destructors" turned on,
>> then I get linker errors as follows:
>>
>>
>> test.elf2flt: In function `__uClibc_fini':
>> (.text+0x908): undefined reference to `__fini_array_start'
>>
>

> If __UCLIBC_FORMAT_SHARED_FLAT__ is not defined, these symbols
> should not be referenced from __uClibc_fini.
> Are you sure uclibc has been properly configured ?
>
> Sorry if cannot help more on this.

No Worries - thanks for your help already :)

Hmmm looks like this is the relevant source in
libc/misc/internals/__uClibc_main.c

 #if defined (__UCLIBC_CTOR_DTOR__) && !defined
(__UCLIBC_FORMAT_SHARED_FLAT__)
extern void _dl_app_init_array(void);
extern void _dl_app_fini_array(void);
# ifndef SHARED
/* These magic symbols are provided by the linker.  */
extern void (*__preinit_array_start []) (void) attribute_hidden;
...

I think my correct action is to look at getting the crt[ni].o to build
without (__UCLIBC_CTOR_DTOR__) defined. I got stuck at the weekend on this,
but I'll have another go at following the make rules tonight after work.

Cheers,
> Carmelo


Thanks Again

--
Kieran
_______________________________________________
uClibc mailing list
uClibc@uclibc.org
http://busybox.net/cgi-bin/mailman/listinfo/uclibc

Reply via email to