www.mikrocontroller.net

Forum: PC-Programmierung Internationalisierung - Alternative zu GNU gettext


Autor: Andreas Frieser (andreasfrieser)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich bin gerade dabei ein Programm zu internationalisiern. Im Umfeld von 
GNU und Linux wird hierzu meistens das Programmpaket gettext verwendet. 
Da im vorliegenden Fall dieses Programm aus verschiedenen Gründen 
ausscheidet, bin ich auf der Suche nach Alternativen.

Dabei bestehen die folgenden Anforderungen:

- Unabhängig von einem Betriebssystem: Das Programm sollte möglichst 
kein bestimmtes Betriebssystem voraussetzen. Ideal wäre es, wenn man das 
Programm als Bibliothek zu dem Programm hinzufügen könnte.

- Reines C: Für das Projekt steht bisher nur ein C-Compiler zur 
Verfügung.

Es muss sich nicht unbedingt um ein freies Projekt handeln, auch 
kommerzielle Software kommt in Frage.

Grüsse aus dem Hegau,

Andreas Frieser

Autor: Rolf Magnus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Da im vorliegenden Fall dieses Programm aus verschiedenen Gründen
> ausscheidet, bin ich auf der Suche nach Alternativen.

Es wäre sicherlich gut, diese Gründe zu kennen, um eine Alternative 
vorschlagen zu können. Bisher suchst du etwas, das genau wie gettext 
ist, aber aus unbekannten Gründen nicht gettext selbst sein darf.

Autor: Bartli (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> - Unabhängig von einem Betriebssystem: Das Programm sollte möglichst
> kein bestimmtes Betriebssystem voraussetzen. Ideal wäre es, wenn man das
> Programm als Bibliothek zu dem Programm hinzufügen könnte.

QT? Sollte gehen, auch wenn du kein GUI brauchst oder ein anderes GUI 
Framewuerg verwendest.

> - Reines C: Für das Projekt steht bisher nur ein C-Compiler zur
> Verfügung.

Dann halt doch nicht QT.

Was spricht gegen gettext? Es ist nicht soo ein grosses Problem, 
Libraries von ihren GNU abhängigkeiten zu befreien. Hab kürzlich selber 
das argp API aus der GNU Libc rausgelöst. Zugegebenermassen ist argp 
einiges simpler als gettext.

Autor: Andreas Frieser (andreasfrieser)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

warum scheidet gettext bisher aus? Die Software soll neben dem PC auch 
auf einem Embedded System (Renesas SH2/SH3) ohne jedes Betriebssystem 
laufen.

Bisher ist es mir nicht gelungen, gettext herauszulösen und gegen den 
verwendeten GCC mit newlib zu linken.

Nach einer Alternative suche ich auch, da die entstehenden Bibliotheken 
für das Zielsystem zu gross sind.

Ergänzung zum ersten Posting: Bisher verwendet das Programm eine 
Übersetzung auf Basis von direkt im Quellcode hinterlegten Arrays und 
Tabellen. Diese Lösung wird mit steigender Anzahl der unterstützten 
Sprachen immer unflexibler. Es wäre schön, die Übersetzung vom Code zu 
trennen.

Eine Möglichkeit wäre die Herauslösung des Parsers für die .mo-Dateien 
von gettext. Hat jemand mit dieser Lösung schon Erfahrungen.

Grüsse aus dem Hegau,

Andreas Freiser

Autor: Bartli (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Bisher ist es mir nicht gelungen, gettext herauszulösen und gegen den
> verwendeten GCC mit newlib zu linken.

Naja, da brauchts in erster Linie Hartnäckigkeit...eine um die andere 
GNU Libc oder Unixspezifische Funktion ersetzen durch ne ANSI C Funktion 
oder einen Eigenbau. Aber ist schon klar, das kann bei etwas in der 
Grösse von gettext schon hässlich sein bis es läuft.

Autor: Bartli (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Eine Möglichkeit wäre die Herauslösung des Parsers für die .mo-Dateien
> von gettext. Hat jemand mit dieser Lösung schon Erfahrungen.

http://www.gnu.org/software/gettext/manual/html_no...

Sieht nicht so kompliziert aus, ausserdem kannst du ja auf den gettext 
Quellcode zurückgreifen.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.