Was macht collect2.exe?

8

Wenn ich den von gcc -v -o proggy.exe proggy.o generierten Code untersuche, finde ich, dass sich die Befehlszeile in eine große Menge von Bibliotheksoptionen und Bibliotheken erweitert, die alle mit collect2.exe verbunden sind. Was ist mit ld.exe passiert? Warum sehe ich das nicht? Kann mir jemand erklären, was collect2.exe macht?

    
allynm 12.05.2010, 20:43
quelle

2 Antworten

8

collect2 ist ein Dienstprogramm, das verwendet wird, um eine Tabelle von Konstruktoren zu generieren, von der __main (eine automatisch generierte Funktion, die am Anfang von main aufgerufen wird) abhängt. Normalerweise sieht man es nicht, weil es im Dateisystem den Namen ld hat, und es ruft seinerseits das echte ld auf (normalerweise real-ld genannt, obwohl collect2 eine Anzahl von Orten überprüft, die danach suchen)

    
Michael Mrozek 12.05.2010 20:47
quelle
4

GCC verwendet ein Dienstprogramm namens collect2 auf fast allen Systemen, um verschiedene Initialisierungsfunktionen zum Startzeitpunkt aufzurufen. [link]

    
Kirill V. Lyadvinsky 12.05.2010 20:48
quelle

Tags und Links