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 |