When installing openmotif-2.2.2-r1 with LANG="ru_RU.koi8r" it breaks with following error messages: make[3]: Entering directory `/var/tmp/portage/openmotif-2.2.2-r1/work/openMotif-2.2.2/demos/programs/animate' ../../../clients/uil/uil -o dog.uid dog.uil -I./../../../clients/uil -I../../../clients/uil Error: $LANG contains an unknown character set Info: no UID file was produced Info: errors: 1 warnings: 0 informationals: 1 make[3]: *** [dog.uid] Error 1 make[3]: Leaving directory `/var/tmp/portage/openmotif-2.2.2-r1/work/openMotif-2.2.2/demos/programs/animate' Obvious workaround is to set LANG to something trivial like "POSIX".
Bad defined codepage... the right (by iso) codepage is KOI8-R so: LANG=ru_RU.KOI8-R Please, again, here you can see that for root account IT IS BETTER to have locale environment unset, because bad setup CAN and DOES break the emerge process... I think that we cannot guarantee that user will not break the root locale settings, but we can guarantee that ebuild script will UNSET the locale settings...
this bug is app bug, 'cause it is only LANG variable dependand, with LC_ALL defined all goes well, with LANG defined the ebuild fails... even with good codepage !!! I'm testing more... please be patient..
As from clients/uil/UilCSet.c file <snap> This function returns information about the character set specified... User-defined character sets are not recognized - it must be one available in the compiler tables... </snap> But what and where tables ?? I'm not so big C guru to inspect all header files and find it... So please for this the LANG variable must be unset to work properly...
OpenMotif has this known bug. just do env LANG="C" emerge openmotif
nice that this is "known" bug... please if it is so "known", why there is no patch in gentoo ebuild process? or better, this bug will not be "known" if the ebuild script unstets all locale variables...
Nick, perhaps emerge can do this when it sets up its environment?
LANG=ru_RU.KOI8-R... Hmmm... I set LANG to ru_RU.KOI8-R -> but emerging exit at this point So... env LANG="POSIX" emerge openmotif -> is only right way...
I have no idea what you're asking me to do really... If you wanna test that, have a NLS box or two try putting the vars into "/etc/portage/bashrc" just like they would appear in profile or .bashrc.
i'd suggest a simple 'export LANG=C' at the top of the openmotif support ... having portage try to tackle LANG inside of portage itself seems like the wrong approach ... if a package is known to break with LANG set, then fix it on a per package basis
better than export LANG="C" is simply unset LANG ...
I'd suggest to unset LANG (or set LANG="C") in .ebuild file for compilation process should not depend on current locale settings. Probably this is openmotif bug, but for now it would be good to have a workaround in gentoo's .ebuild.
*** Bug 19433 has been marked as a duplicate of this bug. ***
*** This bug has been marked as a duplicate of 15119 ***