Maison > développement back-end > Golang > Comment puis-je supprimer les chemins de fichiers des directives TEXTE des binaires Go sans utiliser l'outil « strip » ?

Comment puis-je supprimer les chemins de fichiers des directives TEXTE des binaires Go sans utiliser l'outil « strip » ?

DDD
Libérer: 2024-11-30 03:06:10
original
109 Les gens l'ont consulté

How Can I Remove File Paths from Go Binaries' TEXT Directives Without Using the `strip` Tool?

Suppression des chemins de fichiers des directives TEXT dans les binaires Go compilés

Il est nécessaire d'éliminer les informations de chemin de fichier des directives TEXT dans les binaires Go compilés. Cette question recherche une solution qui n'implique pas l'utilisation de l'outil « strip ».

Solution : utilisation des indicateurs -trimpath

L'approche recommandée implique l'utilisation de l'outil « strip ». -trimpath' se marque lors de l'appel de 'go build'. En passant '-trimpath' à '-gcflags' et '-asmflags', les informations de chemin superflues peuvent être supprimées du binaire elf résultant.

Voici un exemple modifié de la commande 'go build' incorporant le '- chemin de trim' flags :

CGO_ENABLED=0 go build -v -a -ldflags="-w -s" \
    -gcflags=-trimpath=/Users/myuser/dev/go/src \
    -asmflags=-trimpath=/Users/myuser/dev/go/src \
    -o ./fooapi spikes/mongoapi.go
Copier après la connexion

Vérification :

Pour confirmer l'efficacité de cette solution, exécutez 'go tool objdump' sur le binaire modifié :

$ go tool objdump ./fooapi
.
.
TEXT main.init(SB) api/spikes/mongoapi.go
mongoapi.go:60  0x12768c0   65488b0c25a0080000  GS MOVQ GS:0x8a0, CX
mongoapi.go:60  0x12768c9   483b6110        CMPQ 0x10(CX), SP
mongoapi.go:60  0x12768cd   7663            JBE 0x1276932
.
.
Copier après la connexion

Notes supplémentaires :

Il est essentiel de noter que même si le Il a été rapporté que l'outil « strip » résout ce problème, mais certains membres de la communauté Go expriment encore des inquiétudes quant à sa fiabilité. Des cas de bugs inconnus et imprévisibles ont été rencontrés, comme documenté dans divers forums et discussions.

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!

source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal