Gelegentlich enthält die Locale-Archivdatei (/usr/lib/locale/locale-archive) kein Locale, das Sie verwenden möchten. In diesem Fall müssen Sie eine neue Gebietsschemadatei erstellen oder das Gebietsschema aus einer vorhandenen kompilieren, indem Sie:
# localedef -f [charmapfile] -i [inputfile] [outputpath]
zum Beispiel:
# localedef -f SHIFT_JIS -i ja_JP ja_JP.SJIS
Die Warnmeldung „nicht ASCII-kompatibel, Gebietsschema nicht ISO-C-konform “ kann ignoriert werden. Dieser Befehl kann ein geeignetes Gebietsschema bereitstellen, selbst wenn Sie beim Ausführen des obigen Befehls die Warnmeldung erhalten. Die Meldung bedeutet, dass „einige Zeichen (die durch die Konvertierung von ASCII in das von Ihnen erwähnte Gebietsschema bereitgestellt werden) nicht den Codes entsprechen, die in UCS-4 konvertiert werden. Beispielsweise sind „\“ und „^“ die typischen Zeichen, die UCS-4-inkompatibel sind („\“ ist 0x00a5 und „^“ ist 0x203e in UCS-4, obwohl „\“ 0x5c und „^“ ist 0x7e in ASCII).
Sie können jetzt das neue Gebietsschema ja_JP.SJIS verwenden. Sie können überprüfen, ob das Gebietsschema auf das Gebietsschema-Archiv angewendet wird, indem Sie:
# localedef --list
Das aufgelistete Gebietsschema kann in Kleinbuchstaben geschrieben sein und sich vom tatsächlichen Namen des Gebietsschemas unterscheiden. Bitte beachten Sie, dass ein neues Gebietsschema die Verarbeitungsregel für Textzeichen ändern könnte. In diesem Fall müssen Sie das Gebietsschema möglicherweise wie folgt aus dem Gebietsschemaarchiv entfernen:
# localedef --delete-from-archive [existent_locale_listed_in_localedef--list]