ビルドされた Go 実行可能ファイルの GOOS および GOARCH 値の決定
Go では、GOOS および GOARCH 環境変数は、プログラムがビルドされるターゲット オペレーティング システムとアーキテクチャを定義します。この情報は、Go 実行可能ファイルのコンパイルと実行に重要です。
コンパイルされた Go 実行可能ファイルのこれらの値を取得するには、ランタイム パッケージを利用できます。ドキュメントに記載されているように、
GOARCH、GOOS、および GOROOT はコンパイル時に記録されます
runtime.GOOS および runtime.GOARCH 定数は、これらの値へのアクセスを提供します。これらは、実行可能ファイルのコンパイル中に使用された正確な設定を反映しています。
これを説明するために、次の単純な Go プログラムを考えてみましょう。
<code class="go">package main import "fmt" func main() { fmt.Println(runtime.GOOS) fmt.Println(runtime.GOARCH) }</code>
このプログラムを実行可能ファイルにビルドすると、記録されたGOOS と GOARCH の値は実行可能ファイル内に保持されます。実行可能ファイルを実行すると、コンパイル中に使用されたターゲット オペレーティング システムとアーキテクチャが出力されます。
たとえば、実行可能ファイルが GOOS=linux および GOARCH=amd64 でビルドされた場合、実行すると次の内容が出力されます:
linux amd64
後で環境変数を変更したとしても、実行可能ファイルは最初に記録された値を出力します。
したがって、runtime.GOOS および runtime.GOARCH 定数を検査することで、ターゲットの動作を判断できます。特定の Go 実行可能ファイルがコンパイルされたシステムとアーキテクチャ。
以上がコンパイルされた Go 実行可能ファイルから GOOS および GOARCH 値を取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。