Ich kenne strace, was super praktisch ist, um Systemaufrufe zu beobachten. Gibt es eine Entsprechung, die Aufrufe an externe Bibliotheken verfolgen kann?
Zum Beispiel versuche ich, ein SSLeay-Fehlverhalten mit einer Drittanbieter-Binärdatei zu beheben, für die ich nicht auf den Code zugreifen kann (und deren Entwickler nicht reagiert). Ich glaube, ich habe das Problem behoben, aber ich kann es nicht testen, ohne genau zu sehen, wie die signaturgeprüften Daten für das Senden an SSLeay formatiert werden.
Manchmal funktioniert ltrace . Dies erfordert im Allgemeinen einen Debugger wie GDB . Anhand der Aufrufstruktur in disassembly (
objdump -d /path/to/executable
) können Sie sich einen Eindruck verschaffen, auf welche Funktionen Trace- oder Break-Punkte angewendet werden sollen .quelle