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

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

Susan Sarandon
Susan Sarandonoriginal
2024-12-03 10:29:10326parcourir

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

Élimination des chemins de fichiers dans les binaires go avec des directives TEXTE

Pour supprimer les chemins de fichiers tels que "/Users/myuser/dev/go/src/ fooapi/spikes/mongoapi.go" à partir des exécutables go, utilisez l'indicateur -trimpath comme suit :

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

Mécanisme de -trimpath :

L'indicateur -trimpath transmis à la fois à -gcflags et -asmflags supprime les préfixes spécifiés des chemins de fichiers source enregistrés dans le elfe binaire.

Résultat Vérification :

Exécutez go tool objdump ./fooapi pour afficher le résultat 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
.
.

Attention sur la bande :

Le L'outil Strip a fait l'objet d'une controverse dans la communauté Go, malgré les affirmations de résolution. Des bugs imprévus ont été signalés ; reportez-vous aux discussions liées pour plus d'informations.

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