¿Cómo puedo poner un punto de interrupción en "algo se imprime en el terminal" en gdb?

Me gustaría saber desde dónde dentro unenorme Aplicación se imprime un determinado mensaje. La aplicación es tan grande y antigua que utiliza todas las formas posibles de imprimir texto en el terminal; por ejemplo, printf (), fprintf (stdout, ...) etc.

Escribo para poner un punto de interrupción en la llamada al sistema write () pero luego estoy saturado con demasiadas paradas de punto de interrupción debido a varias operaciones de E / S de archivos que también usan write ().

Básicamente, quiero que gdb se detenga cada vez que el programa imprime algo en el terminal, pero al mismo tiempo no quiero que gdb se detenga cuando el programa escribe algo en un archivo.

Respuestas a la pregunta(2)

Su respuesta a la pregunta