gettext support und kernel 2.6


ivanovic

Active Member
Joined
Aug 4, 2006
Messages
784
Hi Leute!
Da ich mir den GP2X nun auch bestellt habe und ein anderer Wesnoth Dev sich an die portierung machen will mal kurz eine kleine Frage:
Wie sieht es mit dem Gettextsupport auf dem GP2X aus. Ist es möglich? Gibt es die libs schon direkt oder muss man die mal eben selbst (cross-)compilen?
Wäre schon schön, wenn man in Wesnoth am Ende dann auch die super gemachte deutsche Übersetzung (*sich selbst auch auf die Schulter klopf*) nutzen kann.
Naja, zur not eben ohne nls support kompilieren, wäre aber schade.
Nun zu meiner anderen Frage:
Weiß jemand, wie es mit dem Support vom Kernel 2.6 aussieht? Im offiziellen rep liegt ja (nur) ein 2.4er kernel. Gibt es Support für den 2.6er oder macht der größere Probleme? Oder ist es dann nur so, dass der DRM teil (und damit kommerzielle Spiele) nicht funktionieren? Denn schließlich ist im 2.6er Kernel ein funktionsfähiger sd-card Treiber installiert, der aber nur der 1.0er Spezifikation nachkommt (sprich ohne DRM, nicht maximale Geschwindigkeit von 133x sondern etwas weniger).
Wäre nett wenn jemand meine Fragen beantorten könnte. Und jetzt wieder in der zustand des "auf den gp2x"-wartens wechseln.
CU
Ivanovic
 
Also das da entsprechende libs installiert wären wäre mir neu, es dürfte nur das grundsystem mit busybox und ein paar Sachen wie die SDL-libs und der mplayer installiert sein. Über diese Sache hatten wir gestern auch irgendwo ne Diskussion, das erste Problem dürfte erstmal die LANG bzw. LC_ALL-Variable sein, die dürfte nicht gesetzt sein und müsste also vom User in entsprechenden Configs oder im Startskript geändert werden.

Über den 2.6er Kernel weiß ich leider nicht viel im Zusammenhang mit dem gp2x aber falls der Treiber kompatibel ist würde es sich sicherlich lohnen sich den mal anzuschauen.

Ich befinde mich momentan eher im Zustand des "auf Wesnoth-wartens" ;-)

EDIT: Also ich weiß nicht genau welche gettext libs benötigt werden, aber die glibc scheint da etwas in der Richtung zu enthalten, ansonsten so libgettext* wie ich es auf meinem PC habe scheint es auf dem gp2x nicht zu geben.
 
Also eine LANG var braucht man an sich nicht um gettext nutzen zu können. Unter windows arbeiten wir ja auch mit gettext und LANG bzw LC_ALL gibt es da meines wissens nach auch nicht. Es geht erstmal darum gettext überhaupt ans laufen zu bekommen. Normalerweise ist gettext integraler bestandteil jeden linux systems. Ist ja auch in *dem* basissystem in Sachen linux, in dem nur das nötigste drin ist (LFS) auch enthalten. Naja, mal schauen ob das was gibt und wie problematisch das werden kann.
Btw mag es sein, dass die Fertigstellung des Ports von wesnoth noch etwas dauert. Der Grund hierfür ist der polnische Zoll. Der Dev, der sich um den Port kümmern wollte muss das Gerät jetzt erstmal irgendwie vom Zoll bekommen. Die machen da anscheinend so ein bisschen Stress in Polen. Ich bin an sich auch kein Coder also werde ich da nicht viel alleine dran machen können. Und auch ich muss erstmal meinen GP2X (den auf 280MHz getestetn) von Ed bekommen. Hab den Betrag gestern Überwiesen, sollte also wohl spätestens morgen bei ihm eingehen. (Ich hoffe ich kann ihn bald in der Hand halten)
 
Ich hatte das immer so verstanden, dass Programme, die gettext nutzen sich die Einstellung as den Variablen holen und dann in der entsprechenden Sprache starten, also kann man zwar wohl gettext ohne nutzen, aber es wird wahrscheinlich ohne Angabe von LANG etc. "C" angenommen also englisch. Wie das unter Windows läuft weiß ich nicht, aber da gibt es durchaus auch vom System festgelegte Variablen. Wenn ich das nächste mal irgendwo an einem, Windows sitze schaue ich das mal nach.

EDIT: Hier die Bestätigung aus der Wikipedia:
Wikipedia said:
Benutzer [Bearbeiten]

Der Benutzer auf einem Unix- (oder unixähnlichen) System definiert die Locale mithilfe der Umgebungsvariablen LC_ALL, LC_MESSAGES bzw. LANG. Das Programm gibt die Texte in der entsprechenden Sprache aus, sofern für diese eine .mo-Datei existiert.

ALso müsste man zusätzlich "LANG=de_DE@euro" oder ähnliches ins Startskript eines entsprechenden Spiels zu schreiben um es auf deutsch zu spielen.
 
Allerdings bestimmt man im Spiel selbst nochmal die Sprache. Damit kann man dann die Angabe von LANG überschreiben (oder das C, dass angenommen wird, wenn nichts gefunden wird). So läuft das zumindest bei Windows. Wenn man das Spiel das erste mal startet ist es auf Englisch, aber das wird dann überschrieben mit dem, was man sich selbst wählt (wenn man was anderes auswählt).
Allerdings habe ich gerade nochmal mit dem gesprochen, der sich darum kümmern will, das Wesnoth auch auf dem GP2X läuft. Zumindest anfangs wird gettext mit dem switch --disable-nls deaktiviert sein. Danach ist, wenn es prinzipiell läuft die Möglichkeit gegeben gettextsupport zu aktivieren. Aber eben nur, wenn noch genug ram zur Verfügung steht. Ich hoffe mal, dass Wesnoth doch nicht ganz so res hungrig ist, wie es in letzter Zeit leider erscheint...
Benchmarks werden dann klären ob am Ende gettext rein kommt oder nicht.
 
Ok, ich kannte jetzt den speziellen Fall von Wesnoth jetzt nicht, bei den meisten Programmen gibt es diese Möglichkeit nicht. Mir ist es aber auch erstmal relativ egal, Hauptsache Wesnoth kommt auf dem Gp2x.
 
Also gettext ist soweit ich weiß nicht verfügbar, vielleicht versuche ich später mal es zu crosscompilieren, da es ja schon ganz nützlich wäre :)

Edit:
Es traten keinerlei Konflikte beim Kompilieren auf, das Ergebnis kannst du dir im Archiv abholen: http://www.gp2x.de/cgi-bin/cfiles.cgi?0,0,0,0,19,1718
 
Back
Top