Sono in fase di debug di un programma C (che non ho scritto). Ho tutti gli strumenti di debug interni (un sacco di stampanti) abilitati, e ho scritto un piccolo script PHP che usa proc_open() e afferra sia lo stdout che lo stderr e li coordina in un unico file.glibc backtrace - impossibile reindirizzare l'output sul file
Al momento, il binario sta morendo con un errore realloc() che viene catturato da glibc, e un backtrace glibc viene stampato, a cominciare da:
*** glibc detected *** /sbin/rsyslogd: realloc(): invalid next size: 0x00002ace626ac910 ***
Ecco la cosa che non capisco: io Ho confermato che lo script PHP sta catturando sia stdout che stderr dal processo del binario e li scrive nei file corretti, ma questo backtrace è ancora stampato sulla console. Da dove viene questo? Esiste un magico canale di output diverso da stdout e stderr?
Qualche idea su come faccio a catturare questo backtrace su un file o inviarlo con stderr?
Grazie, Jason
Oh bene. Così tante rotture ovunque. – Griwes