Come ascoltare passivamente lo stderr e ottenerlo come stringa per l'invio alla richiamata? Ho visto post su read stderr ma voglio ascoltarlo piuttosto che leggerlo attivamente.Come ascoltare lo stderr in C/C++ per l'invio alla richiamata?
Sfondo: Ho un pezzo multipiattaforma che utilizza la libreria di terze parti (libcurl) che genererà informazioni dettagliate in stderr. Questo pezzo multipiattaforma deve essere utilizzato da più di 1 applicazioni non multipiattaforma.
Vorrei registrare queste informazioni, che posso fare fornendo FILE * a libcurl. Ma invece di farlo, voglio vedere se riesco a catturare (ascoltare passivamente) l'output in stderr come stringa e inviarlo all'applicazione principale chiamante tramite callback. Questo ha il vantaggio di 1. l'app principale può mantenere un singolo log usando qualunque strumento di registrazione che vuole. 2. manterrà questo pezzo multipiattaforma.
vedere questo http://stackoverflow.com/questions/5095839/redirect-from-stderr-to-another-file-descriptor – kellogs
Così è C o C++ poi? – netcoder
C++. Ma non uso molto std (non ero sicuro che fosse abbastanza multipiattaforma). –