QT incorrectly determines the default locale from the LC_* variables
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Qt |
Fix Released
|
Undecided
|
Unassigned | ||
qt4-x11 (Ubuntu) |
Confirmed
|
Undecided
|
Unassigned |
Bug Description
QT 4.7, included in Ubuntu Oneiric Ocelot, incorrectly determines the default locale, causing QT-based programs to use the wrong language for the user interface, among other things.
There is already a bug report for this in QT: https:/
The problem appears to be that QT incorrectly uses the LC_NUMERIC variable to determine the default locale (when it should only determine the number format to use), and ignores the LANG variable. My locale settings are as follows:
LANG=en_US.UTF-8
LANGUAGE=en_US:en
LC_CTYPE=
LC_NUMERIC=
LC_TIME=nl_NL.UTF-8
LC_COLLATE=
LC_MONETARY=
LC_MESSAGES=
LC_PAPER=
LC_NAME=nl_NL.UTF-8
LC_ADDRESS=
LC_TELEPHONE=
LC_MEASUREMENT=
LC_IDENTIFICATI
LC_ALL=
And yet QT based programs (in contrast with all other programs on my computer) use Dutch for the user interface, when they should be using English as indicated by the LANG variable. Setting LC_ALL causes them to use English, but that is not an acceptable solution since LC_ALL overrides all the other LC_* variables.
ProblemType: Bug
DistroRelease: Ubuntu 11.10
Package: libqtcore4 4:4.7.4-0ubuntu8
ProcVersionSign
Uname: Linux 3.0.0-14-generic x86_64
NonfreeKernelMo
ApportVersion: 1.23-0ubuntu4
Architecture: amd64
Date: Thu Jan 19 16:50:29 2012
InstallationMedia: Ubuntu 10.10 "Maverick Meerkat" - Release amd64 (20101007)
SourcePackage: qt4-x11
UpgradeStatus: Upgraded to oneiric on 2011-11-23 (57 days ago)
description: | updated |
Fixed in version 4.8.0