Maison  >  Article  >  développement back-end  >  Comment supprimer les informations de débogage du code Go compilé ?

Comment supprimer les informations de débogage du code Go compilé ?

Susan Sarandon
Susan Sarandonoriginal
2024-11-15 07:31:02889parcourir

How to Strip Debugging Information from Compiled Go Code?

Suppression des informations de débogage du code compilé Go

Les informations de débogage sont fréquemment incluses dans le code Go compilé à l'aide de gc par défaut. Bien que cela puisse être utile à des fins de débogage, cela augmente également la taille de l'exécutable et le rend susceptible à la décompilation.

Suppression des informations de débogage

Pour éliminer les informations de débogage pendant compilation avec gc, spécifiez l'indicateur "-ldflags" ainsi que les options "-s" et "-w". La commande suivante le démontre :

go build -ldflags="-s -w"

L'option "-s" supprime la table des symboles, tandis que l'option "-w" supprime les informations de débogage DWARF. Cela supprime efficacement toutes les informations de débogage de l'exécutable compilé.

Remarque sur gccgo

L'utilisation de gccgo ne résout pas ce problème. La compilation sans l'indicateur "-g" entraînera un exécutable cassé qui génère des erreurs liées aux informations de débogage manquantes.

Option supplémentaire dans Go 1.13

Avec l'introduction de Dans la version 1.13, l'indicateur "-trimpath" peut être utilisé pour réduire la longueur des chemins de fichiers stockés dans l'exécutable. Cela minimise encore la taille du code compilé.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn