Go コンパイル済みコードからのデバッグ情報の削除
デバッグ情報は、デフォルトで gc を使用してコンパイルされた Go コードに含まれることがよくあります。デバッグ目的には役立ちますが、実行可能ファイルのサイズが大きくなり、逆コンパイルされやすくなります。
デバッグ情報の削除
実行中にデバッグ情報を削除するにはgc でコンパイルする場合は、「-s」および「-w」オプションとともに「-ldflags」フラグを指定します。次のコマンドはこれを示しています。
go build -ldflags="-s -w"
「-s」オプションはシンボル テーブルを削除し、「-w」オプションは DWARF デバッグ情報を抑制します。これにより、コンパイルされた実行可能ファイルからすべてのデバッグ情報が効果的に削除されます。
gccgo に関する注意
gccgo を使用しても、この問題は解決されません。 「-g」フラグを指定せずにコンパイルすると、デバッグ情報の欠落に関連するエラーを出力する壊れた実行可能ファイルが生成されます。
Go 1.13 の追加オプション
の導入によりGo 1.13 では、「-trimpath」フラグを使用して、実行可能ファイルに保存されているファイル パスの長さを短縮できます。これにより、コンパイルされたコードのサイズがさらに最小化されます。
以上がコンパイルされた Go コードからデバッグ情報を削除するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。