Ho bisogno di un modo per registrare la traccia dello stack delle funzioni in un registro di debug per aiutarmi a diagnosticare un difetto. Il problema è che ho bisogno di implementarlo su Windows e Linux usando C++.Libreria per la registrazione di Call Stack in fase di esecuzione (Windows/Linux)
Dopo una piccola ricerca, ho scoperto che:
- Per l'implementazione di Windows, posso usare StackWalk64 funzione API e la famiglia.
- Sotto Linux, ho trovato libunwind che suona alla grande.
- Oppure, posso usare di backtrace
glibc Prima di iniziare il lavoro, voglio qualche consiglio se questo è il modo giusto e per chiedere se v'è una libreria multipiattaforma già scritto che può aiutare. Sospetto di non essere il primo programmatore che ha bisogno di questo. :)
+1 per una buona domanda ben ha chiesto! –