Como se conectar automaticamente um depurador a um processo no processo inicia no OS X?

StackOverflow https://stackoverflow.com/questions/1384284

  •  21-09-2019
  •  | 
  •  

Pergunta

Eu tenho um processo que gera um processo auxiliar. Às vezes, preciso depurar falhas de inicialização no segundo processo.

No Windows, eu usaria Image File Execution Options, ou ntsd -o. No entanto, não tenho idéia de como fazer isso com o GDB no OS X.

Foi útil?

Solução

Use GDB -Wait. Por exemplo, tente

gdb --wait TextEdit

Na linha de comando, inicie o texto.

Outras dicas

Eu não acho que você possa lançar o GDB da mesma maneira. Em vez disso, execute seu processo pai de dentro do GDB ou anexe ao processo em execução antes que ele force o ajudante. Existe um cenário chamado follow-fork-mode Isso controla qual processo segue o depurador. Dar uma olhada em o manual do GDB Para uma boa descrição.

Se você está usando os processos de lançamento para gerar, então há um WaitForDebugger Chave booleana, que entra no arquivo plist do trabalho. Se for sim, então o Launchd espera (surpreendentemente!) Para o depurador antes exec()no trabalho.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top