У меня есть процесс, который вызывается другим процессом, который вызывается другим процессом и т.д. ad nauseum. Это дочерний процесс в длинной цепочке инструментов.
Этот процесс сбой.
Я хотел бы поймать этот процесс в gdb, чтобы понять, почему он сбой. Однако, единственный способ, о котором я могу думать, это:
- запустите исходный родительский процесс в командной строке.
- poll
ps -C <name process I want to catch>
и получить PID. - запуск gdb, прикрепленный к этому процессу PID.
Это громоздко, но обычно выполняет эту работу. Проблема в том, что текущий сбой выполняется очень быстро, и к моменту захвата PID и запуска gdb он уже прошел точку отказа.
Я хотел бы запустить gdb и вместо:
(gdb) attach <pid>
Я хотел бы сделать:
(gdb) attach <process name when it launches>
Есть ли способ сделать это?
Я использую gdb 7.1 для linux