ホームページ > バックエンド開発 > Golang > 「-trimpath」を使用して Go バイナリからファイル パスを削除するにはどうすればよいですか?

「-trimpath」を使用して Go バイナリからファイル パスを削除するにはどうすればよいですか?

Susan Sarandon
リリース: 2024-11-28 19:55:12
オリジナル
668 人が閲覧しました

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

Go バイナリの TEXT ディレクティブからファイル パスを削除する

go build で作成された実行可能ファイルからパス情報を削除するには、-trimpath フラグを使用します。

-trimpath を使用するフラグ:

-gcflags=-trimpath=/Users/myuser/dev/go/src および -asmflags=-trimpath=/Users/myuser/dev/go/src を go ビルドに追加しますコマンド:

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
ログイン後にコピー

説明:

-trimpath を渡すと、記録されたソース ファイル パスから提供されたプレフィックスが削除されます。このアクションにより、elf バイナリからパス情報が削除されます。

検証:

go ツール objdump を使用して削除を確認します:

$ go tool objdump ./fooapi
.
.
TEXT main.init(SB) api/spikes/mongoapi.go
ログイン後にコピー

ストリップに関する注意:

ストリップは報告されていますが、修正されましたが、Go コミュニティ内ではいくつかの論争が残っています。未知の予測不可能なバグが依然として発生する可能性があります。ストリップを使用するときは注意してください。

以上が「-trimpath」を使用して Go バイナリからファイル パスを削除するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート