uClibc 0.9.31 causing build failure in libstdc++ with gcc 4.2

Thomas Petazzoni thomas.petazzoni at free-electrons.com
Wed Aug 11 14:09:33 UTC 2010


Hello,

In Buildroot, when building a toolchain with gcc 4.2, uClibc 0.9.31,
C++ support enabled and locale support enabled, the build fails with:

ctype_members.cc: In constructor 'std::ctype_byname<_CharT>::ctype_byname(const char*, size_t) [with _CharT = char]':
ctype_members.cc:59: error: invalid use of incomplete type 'struct __uclibc_locale_struct'
/home/test/avr32-br/usr/avr32-unknown-linux-uclibc/sys-include/bits/uClibc_locale.h:85: error: forward declaration of 'struct __uclibc_locale_struct'
ctype_members.cc:60: error: invalid use of incomplete type 'struct __uclibc_locale_struct'
/home/test/avr32-br/usr/avr32-unknown-linux-uclibc/sys-include/bits/uClibc_locale.h:85: error: forward declaration of 'struct __uclibc_locale_struct'
ctype_members.cc:61: error: invalid use of incomplete type 'struct __uclibc_locale_struct'
/home/test/avr32-br/usr/avr32-unknown-linux-uclibc/sys-include/bits/uClibc_locale.h:85: error: forward declaration of 'struct __uclibc_locale_struct'
make[5]: *** [ctype_members.lo] Error 1

This is an example on avr32, but it fails similarly on other
architectures as well. Using uClibc 0.9.30.1 works just fine.

Is it just that uClibc 0.9.31 should not be used with old versions of
gcc such as 4.2 ? Or is it a real problem that should be fixed in
uClibc ?

Thanks,

Thomas
-- 
Thomas Petazzoni, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com


More information about the uClibc mailing list