3 Stimmen

Gibt es eine Standardkodierung für NEEDED-Einträge in ELF?

Ich versuche, einige meiner Codes ein bisschen freundlicher zu nicht-reinen ASCII-Systemen zu machen und habe mich gefragt, ob es eine bestimmte Zeichenkodierung gibt, die für NEEDED-Einträge in ELF-Binärdateien verwendet wird, oder ist es eher untypisch und basiert auf der Dateisystemkodierung des erstellenden Systems (oder sogar direkt auf den Bytes, die an das Programm übergeben wurden, das die Binärdatei erstellt hat) (wenn ja, gibt es irgendeinen Ort in der Binärdatei, der die Kodierung angibt? Wenn ich davon ausgehe, dass die Kodierung des aktuellen Systems für meine Zwecke nicht sehr gut geeignet ist, denke ich), sind Namen, die nicht in ASCII geschrieben sind, so gut wie verboten oder etwas anderes?

3voto

Alex B Punkte 78810

Das ELF-Format spezifiziert NEED-Felder als "null-terminierte Zeichenkette" und sagt nichts über die Kodierung aus, die ziemlich sicher eine 8-Bit-ASCII-Zeichenkette impliziert.

Ich persönlich sehe keinen Sinn darin, die Spezifikation von ausführbaren Dateiformaten zu verkomplizieren, die keinen zusätzlichen Nutzen für das Endprodukt oder den Entwicklungsprozess bieten: Der Benutzer wird die Bibliotheksnamen nicht sehen, so dass er sich nicht um deren Lokalisierung kümmern würde. Sie Mai versuchen, UTF-8 zu verwenden, aber die tatsächliche Dateisystemkodierung ist nicht garantiert UTF-8. Um sicher zu sein, müssen Sie wissen, wie Ihr Ziel-Linker diese Zeichenketten behandelt.

1voto

Chris Jester-Young Punkte 212385

Soweit ich weiß, ist die Standard-Unix-Methode, mit Nicht-ASCII-Zeichen umzugehen, sie als UTF-8 zu kodieren.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X