Development/Tutorials/Localization/Building KDE's l10n Module

From KDE TechBase
Revision as of 09:04, 30 November 2010 by Wrohdewald (talk | contribs) (revpath: debian/ubuntu has no package imake)
Building KDE's l10n Module
Tutorial Series   Localization
Previous   Using Subversion with KDE
Building KDE From Subversion
Writing Applications With Localization in Mind
What's Next   n/a
Further Reading   n/a

Abstract

For those working on applications in KDE's main repository, building and installing language support from KDE's localization (l10n) module is a good idea. Doing so will allow you to test applications in other languages so as to spot problems related to localization that may exist in KDE. Learn how to do just that in this tutorial.

Step 1: l10n

You must download, build and install each language in the l10n module separately. You can check out and build just the German, and XX languages using the following procedure:

svn co -N svn://anonsvn.kde.org/home/kde/trunk/l10n-kde4 l10n
cd l10n
svn up scripts
svn up templates
svn up x-test
svn up de
./scripts/autogen.sh de
./scripts/autogen.sh x-test

Once this is done, switch to your build directory, start cmake in the l10n/x-test, l10n/de, etc directories that you wish to build the language support for one at a time. You may then make and install from the build directory.

Note
You need revpath (may be found in package imake or xutils-dev) to run autogen.sh
Tip
Do not combine make and make install in a single step. It won't install anything.


Step 2: Test An Application

To run your application using, for instance, the German catalogs open a terminal (e.g. konsole) and type:

KDE_LANG=de myapp

where "myapp" is the name of the application you wish to test. Replace the "de" with the language code you wish to test, e.g. "x-test".

The German language is a good choice for testing the layout of your application, as German translated strings tend to be quite long. French is also a good choice. The x-test language is useful for identifying strings in your application that are not translated.