Welches Format verwenden statische Bibliotheksdateien (* .lib)? Wo finde ich "Offizielle" Spezifikationen für * .LIB Dateistruktur / Format?

8

Gerade habe ich diese statischen Bibliotheken in * nix-Systemen gefunden, mit anderen Worten * .a Bibliotheken sind nichts anderes als Archive von Relocationables (* .o-Dateien) in ar fromat.

  1. Was ist mit statischen Bibliotheken (*. lib-Dateien) in Windows? In welchem ​​Format sind sie?

  2. Ich habe einen Artikel gefunden: Ссылка , der die * .lib-Dateistruktur erklärt. Aber wo finde ich "Offizielle" Spezifikationen von * .lib Dateistruktur / Format?

  3. Anders als ar.exe von mingw gibt es ein Werkzeug von Microsoft, das verlagerbare Objekte von * .lib & amp; * .a Dateien?

BEARBEITEN:

Ich frage mich, warum ich nicht zu dieser Frage kommen kann. Wenn es keine offiziellen Spezifikationen gibt. Dann, wie arbeitet der Compiler ("Linker" richtiger sein) Autoren mit * .LIB-Dateien?

    
claws 03.03.2010, 13:21
quelle

2 Antworten

9

Ich habe festgestellt, dass die * .LIB-Datei das Dateiformat ar verwendet.

Offizielle Spezifikationen: Abschnitt 7. "Archiv (Bibliothek) Dateiformat" von Microsoft Portable Executable und Common Object-Dateiformat-Spezifikation beschreibt dieses Format.

    
claws 12.05.2010, 14:56
quelle
2

mingws ar funktioniert nur gut für * .lib-Dateien - auch solche, die unter VisualStudio erstellt wurden.

Wir haben es tatsächlich in der Vergangenheit benutzt, um Teile einer Bibliothek herauszuziehen, die wir brauchten, als es andere Dinge enthielt, mit denen wir nicht verlinkt sein konnten (aufgrund von Konflikten mit anderen Bibliotheken). Irgendwie hacky, aber es funktioniert.

    
T.E.D. 03.03.2010 13:50
quelle