Golang バイナリの移植性
Golang バイナリの移植性は、オペレーティング システムやアーキテクチャなどのいくつかの要因によって決まります。この記事では、64 ビット Linux システムでコンパイルされた Golang バイナリのクロスプラットフォーム互換性に関して提起された具体的な質問に対処します。
他の Ubuntu/Debian システムとの互換性
はい、amd64 Ubuntu システムにインストールされたバイナリは、他の 64 ビット Ubuntu/Debian システムでも実行できます。これは、64 ビット Linux 用にコンパイルされたバイナリの一般原則です。ただし、共有ライブラリでは例外が発生する可能性があることに注意することが重要です。通常、Go は共有ライブラリに依存しません。
32 ビット システム用の X86_64 バイナリの構築
ビルドするには32 ビット Debian のようなシステムで実行される x86_64 バイナリの場合、ビルドする前に GOOS および GOARCH 環境変数を設定できます。
GOOS=windows GOARCH=386 go build (or go install or whatever)
これにより、バイナリは 32 ビット アーキテクチャ用にコンパイルされます。
32 ビット システム用の Windows 上での X86_64 バイナリのビルド
デフォルトでは、Windows システム上でビルドされたバイナリはシステムのアーキテクチャに合わせてコンパイルされます。ただし、GOARCH 環境変数を設定することで、目的のアーキテクチャを指定できます。
GOARCH=386 go build (or go install or whatever)
これにより、Windows システムが 64 ビットの場合でも、バイナリが x86_64 用にビルドされるようになります。
以上が64 ビット Linux でビルドされた Golang バイナリは他の Ubuntu/Debian システムでも実行できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。