StripSymbols usa true como padrão

Quando o .NET 7 introduziu a Implantação de AOT nativo, também introduziu a propriedade StripSymbols que, opcionalmente, permite que os símbolos de depuração sejam removidos do executável produzido no Linux para um arquivo separado. O valor padrão da propriedade era false. Começando no .NET 8, o valor padrão foi alterado para true.

Comportamento anterior

Com PublishAOT, os símbolos de depuração no Linux foram colocados no executável produzido por padrão, com uma opção de aceitação para colocá-los em um arquivo .dbg separado.

Novo comportamento

Com PublishAOT, os símbolos de depuração no Linux são colocados em um arquivo .dbg por padrão, com uma opção de recusa para colocá-los no executável.

Versão introduzida

.NET 8 versão prévia 4

Motivo da alteração

Com base nos comentários, determinamos que os usuários do .NET preferem a convenção de símbolos do .NET em vez da convenção nativa da plataforma. No entanto, a opção de remover os símbolos não era detectável o suficiente.

  • Se você depende da presença de símbolos de depuração no executável principal, adicione <StripSymbols>false</StripSymbols> ao arquivo de projeto para restaurar o comportamento anterior.
  • Se optar por usar o novo padrão, verifique se os símbolos de depuração nos arquivos .dbg estão arquivados corretamente se você acredita que precisará depurar os executáveis gerados.

APIs afetadas

Nenhum.