2017-01-11 6 views
0

私はGoファイルを持っており、私はそれを顧客に提供したいと思います。顧客はターミナルでコマンドを使用して実行できるはずです。彼らは自分のシステムにGo langをインストールしません。クライアントマシンでGoファイルを実行するには?

クライアントマシンでこのバイナリファイルを実行するにはどうすればいいですか?私を助けてください。

答えて

4

移動はcompiled languageです。 Goツールを使用してGoアプリを実行可能バイナリにコンパイルすることができます。実行可能バイナリを取得したら、そのまま実行することができます.Goインストールはもう必要ない/使用されません。 Goはstatically linkedなので、すべての依存関係は実行可能ファイルにコンパイル/リンクされます。具体的には

  • 使用go installをあなたのアプリをコンパイルして$GOPATH/binフォルダ
  • に実行可能なバイナリを「インストール」またはアプリケーションをコンパイルするgo buildを使用して現在の作業で実行可能なバイナリを取得するにはディレクトリ

詳細については、What does go build build?を参照してください。

実行可能なバイナリを顧客に渡すだけです。あなたのアプリが静的なファイルを使用している場合はもちろん、それらも渡す必要があります。

実行可能バイナリは、特定のプラットフォームを対象としています。彼はあなたのアプリケーションを実行するプラットフォームについてあなたの顧客に相談し、その特定のプラットフォームにあなたのアプリケーションをコンパイルする必要があります。

GOOSGOARCHの環境変数を使用して、ターゲットOSとプラットフォームを設定できます。例えば、顧客がWindows AMD64上でアプリケーションを実行したい場合、あなたはこのように、WindowsのAMD64の実行可能ファイルを生成することができます:

GOOS=windows GOARCH=amd64 go build 

有効GOOSGOARCH値のリストについては、How can I build for linux 32-bit with go1.6.2を参照してください。

+0

クライアント用のOpanStackを使用してバイナリを実行する方法を知っていますか? – user4142018

+0

@ user4142018いいえ、新しい質問として投稿される可能性があります。または、彼らのフォーラムで質問するのがより適切かもしれません。 – icza

関連する問題