Build test Qt-application: #include <QtGui> int main(int argc, char *argv[]) { QApplication a(argc, argv); bool ok; QFileDialog::getExistingDirectory(); QColorDialog::getColor (); QFontDialog::getFont(&ok); QTimer::singleShot(1000, QApplication::instance(), SLOT(quit())); return a.exec(); } and run in KDE environment. Reproducible: Always Steps to Reproduce: Build test Qt-application: #include <QtGui> int main(int argc, char *argv[]) { QApplication a(argc, argv); bool ok; QFileDialog::getExistingDirectory(); QColorDialog::getColor (); QFontDialog::getFont(&ok); QTimer::singleShot(1000, QApplication::instance(), SLOT(quit())); return a.exec(); } and run in KDE environment with not default locale (ru_RU.UTF-8 in my case) Actual Results: Dialogs are not localized. Expected Results: Dialogs are localized. In strace log we can see: access("/home/eegorov/.kde4/share/locale/ru/LC_MESSAGES/kfilemodule.mo", R_OK) = -1 ENOENT (No such file or directory) access("/usr/share/locale/ru/LC_MESSAGES/kfilemodule.mo", R_OK) = -1 ENOENT (No such file or directory) access("/home/eegorov/.kde4/share/locale/ru_RU/LC_MESSAGES/kfilemodule.mo", R_OK) = -1 ENOENT (No such file or directory) access("/usr/share/locale/ru_RU/LC_MESSAGES/kfilemodule.mo", R_OK) = -1 ENOENT (No such file or directory) access("/home/eegorov/.kde4/share/locale/ru/LC_MESSAGES/kfilemodule.mo", R_OK) = -1 ENOENT (No such file or directory) access("/usr/share/locale/ru/LC_MESSAGES/kfilemodule.mo", R_OK) = -1 ENOENT (No such file or directory) access("/home/eegorov/.kde4/share/locale/ru_RU/LC_MESSAGES/kfilemodule.mo", R_OK) = -1 ENOENT (No such file or directory) access("/usr/share/locale/ru_RU/LC_MESSAGES/kfilemodule.mo", R_OK) = -1 ENOENT (No such file or directory) access("/home/eegorov/.kde4/share/locale/ru/LC_MESSAGES/kfilemodule.mo", R_OK) = -1 ENOENT (No such file or directory) access("/usr/share/locale/ru/LC_MESSAGES/kfilemodule.mo", R_OK) = -1 ENOENT (No such file or directory) access("/home/eegorov/.kde4/share/locale/en_US/LC_MESSAGES/kdelibs4.mo", R_OK) = -1 ENOENT (No such file or directory) => workaround: mkdir -p ~/.kde4/share/locale/ru/LC_MESSAGES/ cd ~/.kde4/share/locale/ru/LC_MESSAGES/ ln -s /usr/share/locale/ru/LC_MESSAGES/kdialog.mo kfilemodule.mo After this all localized fine.
I do not know, this is gentoo bug or upstream bug. But maybe it makes sense to install links kfilemodule.mo -> kdialog.mo in /usr/share/locale/<lang>/LC_MESSAGES/ by kde-base/kde-l10n ebuld?
Is this still valid with testing qt (4.8.5) and kde (4.11.2) version?
Yes. Bug is still with qt-4.8.5 on kde-4.11.2
Bug is still with qt-4.8.5 on kde-4.13.0
This should probably go upstream I guess.
Please report this upstream. This looks not like an packaging issue. If it turns out that this is a Gentoo specific problem, please re-open this bug.