The forum

Gentoo Character Mapping Error

Author Replies
Blissful Choreography Sunday 14 December 2008 at 12:36
Blissful ChoreographyAnonymous

PlayOnLinux has suddenly stopped working for me in Gentoo.
I have used a ebuild modified from the Sunrise overlay, but the result is the same with the one in the overlay (just a different version number)

Here is the output:

PlayOnLinux v3.2.2

Checking python : [ Ok ]
Traceback (most recent call last):
File "/usr/share/games/playonlinux/python/", line 357, in <module>
File "/usr/share/games/playonlinux/python/lib/", line 18, in __init__
mytranslation = gettext.translation(domain, localedir, [mylocale.GetCanonicalName()], fallback = True)
File "/usr/lib64/python2.5/", line 465, in translation
mofiles = find(domain, localedir, languages, all=1)
File "/usr/lib64/python2.5/", line 437, in find
for nelang in _expand_lang(lang):
File "/usr/lib64/python2.5/", line 132, in _expand_lang
locale = normalize(locale)
File "/usr/lib64/python2.5/", line 307, in normalize
fullname = localename.translate(_ascii_lower_map)
TypeError: character mapping must return integer, None or unicode

Any ideas would be welcomed.
sc0rpi0 Sunday 11 January 2009 at 20:34

Something breaks deep down in the python library, don't know a fix but if you start playonlinux with LANG="" then it should at least launch. That is type the following in a terminal: LANG="" playonlinux
Aymeric P. Sunday 11 January 2009 at 21:08
Aymeric P.

I can really help you in gentoo, but can you report the USE flag used to build python and bash ?
I think that you need to build python and bash with "nls" and/or "gettext"

You can try to run this script : it will check every soft and python import used by PlayOnlinux to help you to find what is wrong.

By setting LANG="" you disallow the locale use (same as setting LC_ALL=C), so PlayOnLinux will work without call of gettext.

PS: The script test is also gziped, replace .zip by .gz (Gentoo don't install unzip by default)

Edited by MulX

Former member.
richarddavid Friday 10 July 2020 at 18:21

Something is going wrong in the Python library, no solution yet, if you start playonlinux in LANG = "" it should open it. It is the following object type: LANG = "" playonlinux

I am a Food enthusiast. Internet fan. Passionate writer. Proud organizer. Tv practitioner. Travel scholar.