Ich denke, dass GC Debugging-Informationen standardmäßig enthält. Ich möchte jedoch die Dekompilierung vermeiden.Vermeiden Sie Debugging-Informationen auf Golang
Wie kann ich die Debugging-Informationen beim Kompilieren von Go-Code mit GC entfernen?
Hinweis: Die Verwendung von gccgo löst das Problem nicht. Wenn ich nicht kompilieren mit ‚-g‘ die ausführbare Datei defekt ist und nur Ausgänge:
keine Debug-Informationen in ELF ausführbare errno -1 fatalen Fehler: keine Debug-Informationen in ELF ausführbare
Laufzeitstapel: keine Debug-Informationen in ELF ausführbare errno -1 Panik während Panik“
Ich erzwang eine Panik und der Stack-Trace deutlich Funktionsnamen und Zeilennummern mit beiden Lösungen angezeigt: S – dv1729
Alle Informationen, die die Go-Laufzeit benötigt, bleibt immer noch in der Binärdatei. Dazu gehören Informationen, die für Panic-Nachrichten, Typinformationen usw. benötigt werden. Ich bin mir nicht bewusst, wie ich sie entfernen kann. Dies unterscheidet sich von reinen Debugging-Informationen. – snap
Strip wird vom Go-Team nicht empfohlen, es kann die ausführbare Datei beschädigen. Es ist besser, 'go build -ldflags '-s' zu verwenden, um die Symboltabelle wegzulassen, aber ich bin mir nicht sicher, ob Sie jeden Symbolnamen vollständig verbergen können. – siritinga