Ich möchte gprof verwenden, um einen Daemon zu profilieren. Mein Daemon verwendet eine 3rd-Party-Bibliothek, mit der er einige Callbacks registriert, und ruft dann eine main
-Funktion auf, die nie zurückkehrt. Ich muss kill
(entweder SIGTERM oder SIGKILL) aufrufen, um den Daemon zu beenden. Leider sagt gprof Anleitung Seite folgendes:Speichern von gmon.out vor dem Löschen eines Prozesses
Das Programm mit Profil aufrufen müssen „exit“ (2) oder die normalerweise für die Profilinformationen Rückkehr in die gmon.out Datei gespeichert werden.
Gibt es eine Möglichkeit Profilinformationen für Prozesse zu speichern, die mit SIGTERM oder SIGKILL gelöscht werden?
Sie müssen dem Compiler und Linker auch einige Flags hinzufügen. Für g ++ solltest du folgendes verwenden: -Wl, - no-as-needed -ldl -pg. Quelle: http://stackoverflow.com/questions/20369672/undefined-reference-to-dlsym – rkioji