Sprachunterstützung für kstars

Ich hab in einem früheren Artikel erzählt, wie das Kompilieren und Installieren von kstars funktioniert. Allerdings ist das Programm bei dieser Methode auf die englische Sprache reduziert.

Die Unterstützung für andere Sprachen ist gar nicht so einfach einzurichten. Ich hab den folgenden Weg für mich als Workaround herausgefunden, der hier mit openSUSE Tumbleweed funktioniert. Ich sage deswegen „Workaround“, weil ich nicht denken kann, daß diese schräge Verhalten normal ist.

Das Einrichten des Arbeitsverzeichisses und das Clonen von kstars haben wir an anderer Stelle bereits gemacht. Ich nehme diese Schritte hier in die Beschreibung dennoch mir rein, um alles beieinander zu haben.

Interessant wird es dann ab Anweisung Nummer 6!

Also, alles zusammen, schön der Reihe nach und danach die Erläuterungen, was bei diesen Anweisungen im Dateisystem so passiert:

mkdir ~/astrostuff (1)
cd ~/astrostuff (2)
git clone git://anongit.kde.org/kstars.git (3)

mkdir -p ~/astrostuff/kstars/build/kstars (4)
cd ~/astrostuff/kstars/build/kstars (5)

cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Release -DFETCH_TRANSLATIONS=ON ~/astrostuff/kstars (6)
cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Release -DFETCH_TRANSLATIONS=ON ~/astrostuff/kstars (7)
make (8)

cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Release -DFETCH_TRANSLATIONS=OFF ~/astrostuff/kstars (9)
make (10)

sudo make install (11)

1. Erstelle das Hauptverzeichnis für kstars, astrometry.net und indi
2. Wechsle in dieses Verzeichnis
3. Clone kstars aus dem git-Repository in das Hauptverzeichnis

4. Erstelle ein Verzeichnis für die build-files von kstars
5. Wechse in dieses build-Verzeichnis

6. Erzeuge die build-files für kstars

Im Terminal werden wir, wenn wir genau hinschauen, eine Warnung entdecken:

„For compatibility with older versions of CMake, option is clearing the
normal variable ‚KDE_L10N_AUTO_TRANSLATIONS‘.“

Und wir werden nirgendwo irgendwelche Anzeichen für eine Sprachunterstützung entdecken, obwohl wie diese Unterstützung mit der Option „-DFETCH_TRANSLATIONS=ON“ angestoße haben. Wenn wir, wie es sich eigentlich gehört mit „make“ und „sudo make install“ weitermachen, dann wird kstars zwar kompiliert und installiert, aber eben ohne Sprachunterstützung (!)

7. Erzeuge ein zweites Mal die build-files für kstars

Wenn wir nun die Terminal-Meldungen genauer unter die Lupe nehmen, werden wir feststellen, daß die Kompatibilitätswarnung von eben verschwunden ist.

8. Kompiliere kstars

Nun entdecken wir im build-Verzeichnis plötzlich ein neues Verzeichnis mit dem Namen po. In dieses po-Verzeichnis werden die po-Sprachuntersützungsdateien heruntergeladen.

Wer nun meint, die Sache sei gegessen und kstars könne installiert werden, den muß ich enttäuschen. Wir haben zwar die po-files im build-Verzeichnis, es fehlen aber die eigentlichen Übersetzungsdateien für kstars, die mo-files.

9. Erzeuge die build-files für kstars ein drittes Mal

…diesmal aber mit der Option „-DFETCH_TRANSLATIONS=OFF“. Wie durch ein Wunder erscheint nun im build-Verzeichnsis ein leerer Ordner mit dem Namen „locale“.

10. Kompiliere kstars nochmal

Der Ordner „locale“ füllt sich mit den mo-files die wir vorhin vermisst haben. Danach läuft die Kompilierung durch, diesmal mit Sprachunterstützung

11. Installiere das ganze Gelumpe

Die Sprachdateien wandern dorthin, wo sie hin gehören, nämlich nach „/usr/share/locale/de/LC_MESSAGES/kstars.mo“ (im Falle der deutschen Sprache).
Und kstars, das ebenfalls installiert wird, besitzt nun die Unterstützung für die verschiedensten Sprachen, umzuschalten im Menupunkt „help“

Kommentar verfassen

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden /  Ändern )

Google Foto

Du kommentierst mit Deinem Google-Konto. Abmelden /  Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden /  Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden /  Ändern )

Verbinde mit %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.