Maison >développement back-end >Golang >Comment puis-je supprimer les chemins de fichiers des binaires Go à l'aide de « -trimpath » ?

Comment puis-je supprimer les chemins de fichiers des binaires Go à l'aide de « -trimpath » ?

Susan Sarandon
Susan Sarandonoriginal
2024-11-28 19:55:12669parcourir

How Can I Remove File Paths from Go Binaries Using `-trimpath`?

Suppression des chemins de fichiers des directives TEXTE dans les binaires Go

Pour éliminer les informations de chemin de l'exécutable créé par go build, utilisez les indicateurs -trimpath.

Utiliser -trimpath Indicateurs :

Ajouter -gcflags=-trimpath=/Users/myuser/dev/go/src et -asmflags=-trimpath=/Users/myuser/dev/go/src à la version go commande :

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

Explication :

Le passage de -trimpath supprime le préfixe fourni des chemins de fichiers source enregistrés. Cette action élimine les informations de chemin des binaires elf.

Vérification :

Utilisez l'outil go objdump pour confirmer la suppression :

$ go tool objdump ./fooapi
.
.
TEXT main.init(SB) api/spikes/mongoapi.go

Attention concernant le strip :

Bien que le strip ait été apparemment corrigé, certaines controverses demeurent au sein la communauté Go. Des bugs inconnus et imprévisibles peuvent encore survenir. Faites preuve de prudence lorsque vous utilisez la bandelette.

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