Goは静的に型付けされたプログラミング言語です。元々Googleによって設計されたGoは、構文の面でCと類似点があります。しかし、機能面では、Goにはメモリ安全性、ガベージコレクション、構造的型付けなどの追加機能が備わっています。ここ数年、Goは驚異的な人気を集めています。
このガイドでは、デモ用のGoプログラムを使用して、Goプログラムのビルドとインストールの手順を説明します。
Goのビルドとインストール
先に進む前に、Goプログラミングにおけるビルドとインストールが何を意味するのか、簡単に説明します。
Goプログラミングにおいて、ビルドとはソースコードをバイナリ実行ファイルに変換するプロセスを指します。実行ファイルには、ターゲットプラットフォーム上で独立して実行できるように、必要なサポートコードが含まれます。Ruby/Pythonプログラムとは異なり、Goのバイナリは通常、新しいシステムで実行するためにシステム依存関係を必要としません。
Goバイナリをシステムの実行可能ファイルパスに配置することを、プログラムのインストールと呼びます。前述のように、このガイドでは、シンプルなGoの「Hello world」プログラムの実行、ビルド、およびインストールについて説明します。
前提条件
始める前に、チュートリアルを進めるために満たす必要がある前提条件を確認しましょう。
- 適切に設定されたUbuntu 20.04。以下を参照してください:Ubuntuサーバーのインストールと設定方法.
- sudo権限を持つ非rootユーザー。システムレベルの変更を行うにはroot権限が必要です。このチュートリアルでは、以下の方法を学ぶことができます:非rootユーザーにsudo権限を付与する.
- 適切に設定されたGoプログラミング環境.
まず、Goプログラミング環境のインストールと設定について簡単に説明します。より詳細なステップバイステップのGoのインストールガイドはこちらをご覧ください.
Goのインストール
Goは、すべての主要なプラットフォーム(Windows、Linux、およびmacOS)で利用できます。公式には、以下から直接入手できます:Golang。ウェブサイトの名前から、GoはしばしばGolangと呼ばれます。ここでは、プログラミング言語としてのGoを「Go」、Golangのウェブサイトを「Golang」と呼びます。
Golangは、以下に関する詳細なドキュメントを提供しています:サポートされているすべてのプラットフォームへのGoのインストール。ただし、公式の方法は手動インストールについて説明しています。新しいバージョンがリリースされるたびに、手動でインストールを最新バージョンにアップデートする必要があります。代わりに、APT(デフォルトのUbuntuリポジトリから)またはsnap(以下から)を使用してGoを直接インストールできます:Snapcraft).
● APTを使用したGoのインストール
Goは公式のUbuntuリポジトリから直接入手できます。ただし、常に最新バージョンのGoであるとは限りません。Ubuntuリポジトリからは、次の2つのバリエーションのGoも利用できます。 golang-go および gccgo-go。 golang-go はGolangの公式バージョンですが、 gccgo-go は GCC用のGoフロントエンド(GNUコンパイラの一部として) です。一般的には、 golang-go が推奨されます。
インストールするには、 golang-go、次のAPTコマンドを実行します:
|
1 |
sudo apt update && sudo apt install golang-go |

Goのバージョンを確認します:
|
1 |
go version |
● snapを使用したGoのインストール
Snapは、サポートされている任意のディストリビューションにインストールできるユニバーサルLinuxパッケージです。Snapcraftには、すべてのサポートされているディストリビューションとインストールガイドが掲載されています。Ubuntuでは、デフォルトでsnapサポートが有効になっています。Goはsnapとしても利用可能です。ただし、Golangによって公式にメンテナンスされているわけではないことに注意してください。snapパッケージはサードパーティのプロバイダーによって管理されています。
Goのsnapをインストールするには、次のコマンドを実行します:
|
1 |
sudo snap install go --classic |

次に、Goのバージョンを確認します:
|
1 |
go version |
Goプロジェクトのセットアップ
システムには、Goでアプリ開発を開始するために必要なすべてのツールが揃っています。デモプロジェクトを作成しましょう。まず、プロジェクト専用のディレクトリを作成します:
|
1 |
mkdir -v demo_project |

次に、カレントディレクトリを新しく作成したディレクトリに変更します:
|
1 |
cd demo_project/ |

ここで、次の名前の新しいテキストファイルを作成します。 main.go:
|
1 |
nano main.go |
次のコードは、実行すると「Hello world」を出力するシンプルなプログラムです。コードをコピーしてください:
|
1 2 3 4 5 6 7 |
package main import "fmt" func main() { fmt.Println("hello world!") } |

ファイルを保存してエディタを閉じます。コードが正常に動作していることを確認します。
|
1 |
go run main.go |

Goコンパイラはソースファイルをバイナリファイルにビルドして実行しました。また、プログラムが正常に動作していることも確認します。
Goワークスペースの設定
Goプログラムを適切にインストールするには、GoワークスペースとGOPATHを設定する必要があります。
まず、ディレクトリ構造を作成します。
|
1 |
mkdir -pv $HOME/go/{bin,src} |

次に、以下の値を宣言する必要があります。 GOPATH そして、それを以下に追加します。 PATH。以下を開きます。 bashrc ファイル:
|
1 |
nano ~/.bashrc |

ファイルの末尾に次の行を追加します。
|
1 2 3 |
export GOPATH=$HOME/go export GOBIN=$GOPATH/bin export PATH=$PATH:$GOPATH/bin:/usr/local/go/bin |

以下を再読み込みします。 bashrc:
|
1 |
source ~/.bashrc |
変更が成功したかどうかを確認します。
|
1 |
echo $PATH |
Goバイナリのビルド
このセクションでは、Goコードを配布可能なスタンドアロンのバイナリファイルにコンパイルする方法を説明します。バイナリには、Goコードだけでなく、バイナリを実行するための追加のシステムコードも含まれます。コードをコンパイルするには、次のコマンドを実行します。
|
1 |
go build main.go |

複数のGoコードファイルがある場合は、次のコマンドを使用します。
|
1 |
go build |
ファイルが指定されていない場合、Goは現在のディレクトリ内のGoファイルを検索し、それらすべてをコンパイルします。各バイナリファイルの名前は、そのソースGoファイルにちなんで付けられます。この例では、Goはプログラムをビルドしました。 main。プログラムを実行します。
|
1 |
./main |

このプログラムは、他のコンピュータに配布する準備ができています。
● バイナリ名の変更
ビルドする際、Goは実行可能ファイルの名前を自動的に選択します。名前の選択に関しては、2つのオプションがあります。
- もし Go modules が使用されている場合、実行可能ファイルはモジュール名の最後の部分を使用します。
- Goモジュールが使用されていない場合、Goは現在のディレクトリの名前またはソースファイルの名前を使用します。
より複雑なプログラムを扱う場合は、異なる命名規則が必要になります。そのようなシナリオでは、これらのデフォルトの命名方法はあまり役に立ちません。このような状況では、フラグを使用して出力をカスタマイズするのが最善の方法です。 -o。簡単なデモンストレーションを行ってみましょう。フラグを使用してGoプログラムをビルドします。 -o 別のファイル名を指定します。
|
1 |
go build -o bin/hello |

この -o フラグは、出力を指定された引数に一致させるようGoに指示します。この場合、実行可能ファイルはディレクトリの下に配置されます。 bin 名前は hello.
次に、新しい実行可能ファイルをテストします。
|
1 |
./bin/hello |
Goプログラムのインストール
これまでに、ソースファイルから配布可能なGoバイナリをビルドする方法を説明しました。これらは他のシステムに配布し、デプロイしてテストを実行できます。ただし、ソースディレクトリの外では実行できません。プログラムを積極的に使用する予定がある場合、この制約は非常に煩わしいものになります。作業を簡単にするために、Goプログラムをインストールして、システム全体のどこからでもアクセスできるようにすることができます。
プログラムをインストールするには、ソースディレクトリで次のGoコマンドを実行します。
|
1 |
go install |

このコマンドは、以下と同じように動作します。 go build。ただし、実行可能ファイルをソースディレクトリに残す代わりに、次のディレクトリに配置されます。
|
1 |
$GOPATH/bin |
変数 GOPATH および GOBIN は、Goワークスペースを探す場所をGoに指示します。 GOPATH のデフォルトは、次の場所です。 $HOME/go。手動で設定しました。 GOBIN を以下に設定します。 $GOPATH/bin。以下の場所を確認するには、 GOPATH および GOBIN 次のコマンドを使用します。
|
1 |
go env GOPATH |
|
1 |
go env GOBIN |

以下の内容を確認します。 $GOPATH/bin。プログラムがそこにあるはずです。
|
1 |
ls $GOPATH/bin |

インストールが成功したかどうかを確認します。現在のディレクトリを別の場所に変更し、Goプログラムを実行してみます。
|
1 |
demo_project |

最後に、プログラムをシステムにインストールできるようになります。必要なときに、どこからでもそれらを使用できます。
最後に
このチュートリアルでは、Goツールチェーンを使用してソースコードから実行可能なバイナリをビルドする方法を説明しました。これらのバイナリは、Goの設定が一切ない他のシステムでも使用できます。最後に、Goプログラムをインストールして、システム内のどこからでも利用できるようにする方法を説明しました。
開発者向けに、CloudSigmaはGo APIサポートを提供しています。これにより、クラウドサーバーの管理、リソースの編集、およびインフラストラクチャのスケーリングが可能になります。
ハッピーコンピューティング!




コメント
コメントはまだありません。最初のコメントを投稿しましょう。