Como criar um backtrace útil no Linux
Sintomas
Ao trabalhar no Linux, às vezes pode acontecer que o BricsCAD falhe repentinamente e desapareça.
Ao executar o BricsCAD a partir do Terminal, uma curta mensagem de erro é impressa (geralmente será "Falha de segmentação"), mas isso não fornece informações úteis sobre o motivo da falha.
Nesse caso, um backtrace (stack trace) torna-se muito útil para a equipe de suporte técnico identificar a causa do bloqueio. Este mostra a pilha atual de chamadas de função aninhadas no momento da falha.
Causa
BricsCAD falha sem informações úteis sobre o travamento.
Solução
Para obter o backtrace, siga estas etapas:
- Em uma instância do Terminal, execute o BricsCAD dentro do gdb com o seguinte comando:
LD_LIBRARY_PATH=/opt/bricsys/bricscad/vXX GDK_BACKEND=x11 QT_QPA_PLATFORM=xcb gdb
/opt/bricsys/bricscad/vXX/bricscad
Note: Substitua 'vXX' pelo número da versão principal do BricsCAD, por exemplo V23. - Na janela, digite run e pressione Enter para iniciar o programa.
- Reproduza o acidente. Depois de travar, a janela do BricsCAD simplesmente congela, mas não desaparece.
- Volte para o Terminal, digite bt e pressione Enter para obter um backtrace.
Se bt não funcionar, o BricsCAD pode estar travando em vez de falhar. Nesse caso, pressione CTRL+C para pausar o BricsCAD, então bt deve funcionar.
O backtrace completo pode não caber na tela. Nesse caso, a última linha fica assim:---Digite < return > para continuar, ou q < return > para sair---
- Copie a parte relevante do backtrace em um editor de texto e anexe-o a um pedido de suporte ou poste-o diretamente no Pedido de Suporte.
- Digite q e pressione Enter na janela Terminal.
- Digite y e pressione Enter para confirmar.