Il 20 aprile 2014 18:34:26 "Yann E. MORIN" <yann.morin.1...@free.fr> ha
scritto:
Hello!
Hello,
While building postgresql with uClibc, we have locales-related build
failures. Here is a small test-case (by Peter) that breaks on uClibc,
but works on glibc:
---8<--- test.c ---8<---
#include <locale.h>
#include <ctype.h>
int f(int c, locale_t l)
{
return isdigit_l(c, l);
}
---8<---
$ gcc -Wall -D_GNU_SOURCE -c test.c
[OK]
$ i686-buildroot-linux-uclibc-gcc -Wall -D_GNU_SOURCE -c test.c
test.c: In function âfâ:
test.c:5:9: error: dereferencing pointer to incomplete type
test.c:6:1: warning: control reaches end of non-void function
[-Wreturn-type]
What happens is that:
sysroot/usr/include/locale.h:
typedef __locale_t locale_t;
sysroot/usr/include/bits/uClibc_locale.h:
typedef struct __uclibc_locale_struct *__locale_t;
But struct __uclibc_locale_struct is never defined:
What about removing the typedef above ?
$ grep -r '__uclibc_locale_struct' sysroot/
sysroot/usr/include/bits/uClibc_locale.h:struct __uclibc_locale_struct;
sysroot/usr/include/bits/uClibc_locale.h:typedef struct
__uclibc_locale_struct *__locale_t;
So, no actual definition of struct __uclibc_locale_struct, so incomplete
type is being derefenced. :-(
Indeed !
Here are the locales-related options from .config:
$ grep LOCALE .config
UCLIBC_HAS_LOCALE=y
# UCLIBC_BUILD_ALL_LOCALE is not set
UCLIBC_BUILD_MINIMAL_LOCALE=y
# UCLIBC_PREGENERATED_LOCALE_DATA is not set
UCLIBC_BUILD_MINIMAL_LOCALES="en_US"
UCLIBC_HAS_XLOCALE=y
Any idea?
Regards,
Yann E. MORIN.
Cheers,
Carmelo
--
.-----------------.--------------------.------------------.--------------------.
| Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics'
conspiracy: |
| +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___
|
| +33 223 225 172 `------------.-------: X AGAINST | \e/ There is
no |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v
conspiracy. |
'------------------------------^-------^------------------^--------------------'
_______________________________________________
uClibc mailing list
uClibc@uclibc.org
http://lists.busybox.net/mailman/listinfo/uclibc
Inviato con AquaMail per Android
http://www.aqua-mail.com
_______________________________________________
uClibc mailing list
uClibc@uclibc.org
http://lists.busybox.net/mailman/listinfo/uclibc