ホームページ  >  記事  >  バックエンド開発  >  64 ビット Linux でビルドされた Golang バイナリは他の Ubuntu/Debian システムでも実行できますか?

64 ビット Linux でビルドされた Golang バイナリは他の Ubuntu/Debian システムでも実行できますか?

DDD
DDDオリジナル
2024-11-16 19:35:03431ブラウズ

Can Golang Binaries Built on 64-bit Linux Run on Other Ubuntu/Debian Systems?

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 サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。