Gentoo Archives: gentoo-embedded

From: "Peter S. Mazinger" <ps.m@×××.net>
To: gentoo-embedded@l.g.o
Subject: Re: [gentoo-embedded] problems with localization uclibc
Date: Mon, 05 Sep 2005 08:58:42
Message-Id: Pine.LNX.4.44.0509051006550.10981-100000@lnx.bridge.intra
In Reply to: Re: [gentoo-embedded] problems with localization uclibc by Natanael Copa
1 On Wed, 31 Aug 2005, Natanael Copa wrote:
2
3 Localization in gentoo-uclibc:
4 glibc's localization provides iconv (what libiconv would provide) and
5 libintl functionality (the latter one is what is covered really by
6 USE=nls), it additionally requires gettext mostly to build packages but
7 not for runtime uclibc (this is not the state of the ebuilds in the tree
8 though and be warned, don't enable nls for current masked uclibc ebuilds
9 because that part of the ebuild is incorrect !!!) provides a subset of
10 iconv (allows to build everything I ever tested - for ex. the
11 full gnome suite, kde is almost finished too -not related to this though)
12 that is currently provided by the pulled-in libiconv, and the libintl
13 functionality that is provided by the pulled-in gettext. The libintl
14 functionality in uClibc was disabled by it's developer, because it can't
15 "yet" be used as a full replacement for nls related stuff (but it is
16 enough to build anything needing
17 textdomain/bindtextdomain/bind_textdomain_codeset and *gettext.
18
19 I have separated these into USE=iconv (not present in portage) and
20 USE=nls.
21
22 There is a "stopper" bug for glib2 that does not allow anything to be done
23 properly in the portage tree (search for glib iconv gettext and/or nls or
24 search for my name in bugs.g.o). The maintainer of glib2 does not accept a
25 patch that would allow to allow to build glib on a system w/ USE=-nls.
26 I haven't seen any pkg that really requires USE=nls (built more then 300
27 against uclibc), but the tree is full of DEPEND="sys-devel/gettext", iconv
28 is good to have, else charset translations don't work (but the pkgs could
29 be built w/o it though)
30
31 To overcome this it would be possible to create a glib2-uclibc package
32 that would provide dev-libs/glib-2. Until there is no solution to glib2 it
33 is no use to go further.
34
35 As I said in the bug mentioned in this thread, I would ban
36 libiconv/gettext completely from the uclibc profiles, because they only
37 call for trouble, you can maybe build some more packages, but later you
38 nuke your gcc compiler for ex.
39
40 To disable DEPEND for these 2 packages (until they maybe will be masked)
41 I add sys-devel/gettext-99999 and dev-libs/libiconv-99999 to
42 /etc/portage/profile/package.provided
43
44 Possibilities currently to overcome libintl.h needs:
45 a. provide a dummy libintl.h for the pkg (touch ${S}/libintl.h is
46 mostly sufficient)
47 b. provide dummy functions for *gettext *textdomain* needed by a package
48 in this libintl.h file.
49
50 Due to the way I modified my build system I won't provide files/patches
51 ... for the above, until
52
53 ... it is possible that one stubborn maintainer can block an addition
54 because he does not need it and has no interest in supporting uclibc (he
55 also blocked a similar patch to gtk+ for 6 month, saying it won't be
56 acceptable upstream, I have sent the patch upstream, they accepted it
57 within 1 working day and added it to cvs, but gentoo didn't got the change
58 into gtk+ x86 stable ... search gtk+ and ngettext in bugs.g.o, although
59 the solution presented there is not quite correct, it should handle
60 plural case too)
61
62 Peter
63
64 > Walter Goossens wrote:
65 >
66 > > Natanael Copa wrote:
67 > >
68 > >> Most of the problems I have been experiencing with gentoo embedded have
69 > >> been related to localization (gettext/libintl/libiconv). Here are some
70 > >> examples:
71 > >>
72 > >> 'make menuconfig' and 'make oldconfig' does not work out of the box
73 > >> (looks like they are experiencing this on uclibc list too?)
74 > >> http://thread.gmane.org/gmane.linux.gentoo.embedded/88
75 > >>
76 > >> Some applications don't link:
77 > >> for example eject (Adding LDADD=-lintl is a workaround)
78 > >>
79 > >> Some applications don't compile (at least gcc does not in ~x86:
80 > >> https://bugs.gentoo.org/show_bug.cgi?id=104237)
81 > >>
82 > >> Many ebuilds compile but has not proper RDEPEND. They often lack
83 > >> libiconv or gettext dependency.
84 > >> For example:
85 > >> gdb: readline libiconv
86 > >> eject: gettext
87 > >> mpd: libiconv
88 > >> mpc: libiconv
89 > >> cvs: gettext
90 > >>
91 > >> etc...
92 > >>
93 > >> Since this is a returning problem, I wonder if there is something we
94 > >> could do about it.
95 > >>
96 > >> Is a standard way to handle localization problems with uclibc?
97 > >>
98 > >> Should localization in uclibc be mentioned in developer docs?
99 > >>
100 > >> Should the ebuilds with dependency related problems be reported one by
101 > >> one or can we make a bulk? (ie try to find all affected ebuilds and
102 > >> report as single bug)
103 > >>
104 > >>
105 > >>
106 > > I've got that libiconv problem too using gentoo-embedded on a MIPS
107 > > system.
108 > > I'm unable to compile PHP due to this bug...
109 > >
110 > > If / when you find something out will you let us know?
111 > > I tried installing the separate libiconv from x86 but that isn't
112 > > really elegant and to make things worse, doesn't do the trick (for PHP
113 > > at least)
114 >
115 >
116 > There is an explanation here:
117 >
118 > https://bugs.gentoo.org/show_bug.cgi?id=104237
119 >
120 >
121 > It tells that gettext/iconv shouldn't be there at all. It is in my
122 > system (obviously) so I need to remove and recompile. (using
123 > rev-dep-rebuild --soname libiconv.so.2)
124 >
125 > Looks like it was fetchmail that pulled in gettext and gettext pulled in
126 > libiconv.
127 >
128 >
129 > --
130 > Natanael Copa
131 >
132 >
133
134 --
135 Peter S. Mazinger <ps dot m at gmx dot net> ID: 0xA5F059F2
136 Key fingerprint = 92A4 31E1 56BC 3D5A 2D08 BB6E C389 975E A5F0 59F2
137
138 --
139 gentoo-embedded@g.o mailing list

Replies

Subject Author
Re: [gentoo-embedded] problems with localization uclibc "René Rhéaume" <rene.rheaume@×××××.com>