2017-01-31 5 views
1

Ich versuche, einen Yocto-Build mehrsprachige Unterstützung hinzuzufügen. Lesen Sie die offizielle Dokumentation die ich gefunden habe, dass die Build-Optionen, die lokalen Einstellungen steuert, sind:Wie kann man einen Yocto-Build in mehreren Sprachen unterstützen?

  • GLIBC_GENERATE_LOCALES
  • IMAGE_LINGUAS

-Link: http://www.yoctoproject.org/docs/1.8/mega-manual/mega-manual.html#var-GLIBC_GENERATE_LOCALES

Nach einem Build mit den folgenden Optionen:

GLIBC_GENERATE_LOCALES="en_GB.UTF-8 en_US.UTF-8" 
IMAGE_LINGUAS?="en-gb" 

Wenn ich nach "localectl" die Liste der verfügbaren Sprachumgebungen frage, wird nichts angezeigt (Befehl: localectl list-locales).

Ein weiteres Bit von Informationen, die Ausgabe des Befehls "locale" ist:

LANG= 
LC_CTYPE="POSIX" 
LC_NUMERIC="POSIX" 
LC_TIME="POSIX" 
LC_COLLATE="POSIX" 
LC_MONETARY="POSIX" 
LC_MESSAGES="POSIX" 
LC_PAPER="POSIX" 
LC_NAME="POSIX" 
LC_ADDRESS="POSIX" 
LC_TELEPHONE="POSIX" 
LC_MEASUREMENT="POSIX" 
LC_IDENTIFICATION="POSIX" 
LC_ALL= 

Die Ausgabe von "locale -a" Befehl lautet:

C 
POSIX 

Was bin ich?

+0

Nach weiteren Untersuchungen habe ich festgestellt, dass die IMAGE_LINGUAS Optionen in eine andere Konfigurationsdatei überschrieben wurden. Nach der Lösung dieses Konflikts habe ich folgende Locales installiert: "en_US", "en_GB". Das ist nicht genug, wonach ich suche ist "en_US.utf8". Warum wurde die utf8-Version des Gebietsschemas nicht installiert? – Grynium

Antwort

0

Die Gebietsschemata wurden nicht generiert, da die Variable IMAGE_LINGUAS an eine andere Stelle (mein Fehler) überschrieben wurde.

Die mit IMAGE_LINGUAS, z. "en_GB" oder "en_US", hat nicht das Suffix ".UTF-8" in ihrem Namen, aber sie verwenden die UTF-8-Kodierung. Um zu überprüfen, ob ein Gebietsschema UTF-8 ist, siehe: https://stackoverflow.com/a/42797421/5321161

Verwandte Themen