StripSymbols true par défaut
Lorsque .NET 7 a introduit le déploiement AOT natif, il a également ajouté la propriété StripSymbols
qui permet éventuellement de retirer les symboles de débogage de l’exécutable produit sur Linux dans un fichier distinct. La valeur par défaut de la propriété était false
. À compter de .NET 8, elle est passée à true
.
Comportement précédent
Avec PublishAOT
, les symboles de débogage sur Linux étaient placés dans l’exécutable produit par défaut, avec une option permettant d’accepter de les placer dans un fichier .dbg distinct.
Nouveau comportement
Avec PublishAOT
, les symboles de débogage sur Linux sont placés par défaut dans un fichier .dbg, avec une option permettant de refuser de les placer dans l’exécutable.
Version introduite
.NET 8 Preview 4
Raison du changement
Sur la base des commentaires, nous avons déterminé que les utilisateurs .NET préfèrent la convention de symboles .NET à la convention native de la plateforme. Toutefois, l’option permettant de supprimer les symboles n’était pas assez détectable.
Action recommandée
- Si vous comptez sur la présence de symboles de débogage dans l’exécutable principal, ajoutez
<StripSymbols>false</StripSymbols>
à votre fichier projet pour restaurer le comportement précédent. - Dans le cas où vous choisissez d’utiliser la nouvelle valeur par défaut, vérifiez que les symboles de débogage sont correctement archivés dans les fichiers .dbg si vous pensez que vous devrez déboguer les exécutables générés.
API affectées
Aucun.