リンドくん先生、Go言語を勉強したいんですけど、インストールから躓いてます...
GOROOT?GOPATH?なんだか難しそうで...
たなべ心配しないで!最初は確かに設定項目が多くて戸惑うよね。
でも最近はGoのインストール時に内包されるからあまり気にしなくていいかもね。念のため一緒に理解していこう!
プログラミングを学ぶ上で、Go言語は今注目を集めている言語の一つです。その理由は、シンプルで読みやすい文法と、高いパフォーマンスを両立しているからです。
しかし、多くの初心者がGo言語を始める前に立ちはだかるのが「環境構築」という壁なのではないでしょうか?
特に「GOROOT」「GOPATH」といった専門用語が出てくると、「難しそう...」と感じてしまう方も多いと思います。でも安心してください。
この記事では、プログラミング初心者の方でも確実にGo言語の環境を構築できるよう、ステップバイステップで丁寧に解説していきます。
Go言語とは?なぜGOROOT/GOPATHが必要なのか
リンドくんそもそもGo言語って何が良いんですか?他の言語とどう違うんでしょう?
たなべGo言語はGoogleが開発した言語で、シンプルさと高速性を両立してるんだ。
クラウドやバックエンド開発でよく使われていて、DockerやKubernetesもGo言語で作られているんだよ。
Go言語の特徴
Go言語(別名Golang)は2009年にGoogleで開発されたプログラミング言語です。主な特徴として以下が挙げられます。
- シンプルな文法 → 覚えやすく、読みやすいコード
- 高速なコンパイル → 開発サイクルが短縮できる
- 並行処理が得意 → ゴルーチンという仕組みで効率的な並行処理が可能
- 静的型付け → バグを事前に発見しやすい
GOROOT/GOPATHが必要な理由
Go言語を使うために「GOROOT」と「GOPATH」という概念を理解する必要があります。
GOROOT(ゴールート)
- Go言語本体がインストールされている場所を指す
- Go言語の標準ライブラリやコンパイラが含まれている
- 通常は自動で設定される
GOPATH(ゴーパス)
- 自分が作成するGoプロジェクトの作業場所を指す
- 外部パッケージ(ライブラリ)もここに保存される
- 開発者が任意の場所に設定できる
つまり、GOROOTは「Go言語の道具箱がある場所」、GOPATHは「自分の作業机がある場所」と考えると分かりやすいでしょう。
【Windows編】Go言語のインストール手順
ステップ1 公式サイトからダウンロード
まず、Go言語の公式サイトにあるダウンロードページにアクセスします。
※2025年7月現在の情報です。
- このページの1番左にあるWindowsのgo1.24.5.windows-amd64.msiのリンクを見つける(バージョンは最新ならなんでもOK)
- Windows版のインストーラ(.msiファイル)をダウンロード
- 最新の安定版を選択することを推奨します
ステップ2 インストーラの実行
ダウンロードしたファイルをダブルクリックしてインストールを開始します。
特別な理由がない限り、デフォルトの設定でインストールを進めてください。
インストール中に以下の項目が自動で設定されます。
- GOROOT:
C:\Go※違うパスの場合もありますが基本はデフォルトでOK - PATH環境変数: Go言語のコマンドが使えるように自動追加
ステップ3 インストールの確認
インストールが完了したら、コマンドプロンプトを開いて確認してみましょう。
go version正しくインストールされていれば、以下のような表示が出ます。
go version go1.24.5 windows/amd64
ステップ4 GOPATHの設定(任意)
最近のGo言語では明示的に設定する必要はありません。
学習目的では設定しておく場合は以下を参考にしてください。
WindowsでGOPATHを設定する方法は以下です。
- 「システムのプロパティ」→「環境変数」を開く
- 「新規」ボタンをクリック
- 変数名:
GOPATH - 変数値:
C:\Users\[ユーザー名]\go(任意の場所でOK)
【Mac/Linux編】Go言語のインストール手順
リンドくんMacやLinuxでのインストールも同じような感じですか?
たなべ基本的な流れは同じだけど、MacならHomebrew、Linuxならパッケージマネージャーを使う方法もあるよ。 より簡単にインストールできるから紹介するね。
Mac環境でのインストール
方法1 Homebrewを使用(推奨)
Homebrewの公式サイトへアクセスし、一番上にあるコマンドをコピーして、ターミナルで実行すればインストールできます。
# Homebrewでインストール
brew install go
# インストール確認
go version方法2 公式インストーラを使用
- 公式サイトから macOS版をダウンロード(Apple SilliconならARMです)
- .pkgファイルを実行してインストール
- ターミナルで確認
go version
Linux環境でのインストール
Ubuntu/Debian系の場合
# パッケージマネージャーでインストール
sudo apt update
sudo apt install golang # ←Ubuntu24.04以降、それ以前ならsudo apt install golang-go
# インストール確認
go versionCentOS/RHEL系の場合
# パッケージマネージャーでインストール
sudo yum install golang
# インストール確認
go versionMac/LinuxでのGOPATH設定
シェルの設定ファイル(.bashrc、.zshrcなど)に以下を追加してください。
# GOPATHの設定
export GOPATH=(go env GOPATH)
export PATH=$PATH:$GOPATH/bin追加したら設定を反映させます。
source ~/.bashrc # または ~/.zshrc環境変数の確認と設定のポイント
重要な環境変数の確認方法
Go言語の開発に必要な環境変数が正しく設定されているか確認してみましょう。
# Go関連の環境変数をすべて表示
go env
# 特定の変数のみ確認
go env GOROOT
go env GOPATH
go env GOBIN正しい設定例
理想的な設定は以下のようになります。
GOROOT=/usr/local/go # Go言語本体の場所, Homebrewでインストールした場合はHomebrew直下
GOPATH=/home/user/go # 作業ディレクトリ
GOBIN=/home/user/go/bin # 実行ファイルの場所
よくある設定ミスと対処法
問題1: GOPATHが設定されていない
# 一時的な設定(セッション中のみ有効)
export GOPATH=$HOME/go
# 恒久的な設定(シェル設定ファイルに追加)
echo 'export GOPATH=$HOME/go' >> ~/.bashrc問題2: PATHにGo関連のディレクトリが含まれていない
# GOROOTのbinディレクトリをPATHに追加
export PATH=$PATH:/usr/local/go/bin
# GOPATHのbinディレクトリもPATHに追加
export PATH=$PATH:$GOPATH/bin初心者向け!最初のGoプログラムを動かしてみよう
リンドくん環境ができました!早速何かプログラムを書いて動かしてみたいです!
たなべ素晴らしい!まずはHello Worldから始めよう。 Go言語の基本的な書き方も一緒に覚えられるよ。
ワークスペースの準備
まず、Go言語用の作業ディレクトリを作成しましょう。
# GOPATHディレクトリの作成
mkdir -p $GOPATH/src/hello
cd $GOPATH/src/helloHello Worldプログラムの作成
main.goというファイルを作成し、以下のコードを書いてみましょう。
package main
import "fmt"
func main() {
fmt.Println("Hello, Go World!")
fmt.Println("Go言語の環境構築が完了しました!")
}コードの説明
package main→ 実行可能なプログラムの開始点import "fmt"→ 標準出力用のパッケージを読み込みfunc main()→ プログラムのエントリーポイントfmt.Println()→ 文字列を出力する関数
プログラムの実行
作成したプログラムを実行してみましょう。
# 直接実行する方法
go run main.go
# ビルドしてから実行する方法
go build main.go
./main # Linux/Mac
main.exe # Windows成功すると以下のような出力が表示されます。
Hello, Go World!
Go言語の環境構築が完了しました!
Go Modulesと最新の開発方法
リンドくん先生、Go Modulesって何ですか?GOPATHとは違うんですか?
たなべGo 1.11からGo Modulesという新しい仕組みが導入されて、今はGOPATHを使わない開発方法が主流になってるんだ。
Go Modulesとは
Go Modules(ゴーモジュールズ)は、Go 1.11以降で導入された依存関係管理システムです。これにより、以下のメリットがあります。
- GOPATHに依存しない開発が可能
- バージョン管理された依存関係の管理
- 再現可能なビルドの実現
Go Modulesを使った現代的な開発方法
# 任意の場所にプロジェクトディレクトリを作成
mkdir my-go-project
cd my-go-project
# Go Moduleの初期化
go mod init my-go-project
# main.goファイルを作成go.modファイルが自動生成され、プロジェクトの情報と依存関係が管理されます。
module my-go-project
go 1.24.5外部パッケージの使用例
package main
import (
"fmt"
"net/http"
"github.com/gorilla/mux"
)
func HomeHandler(w http.ResponseWriter, r *http.Request) {
fmt.Fprintln(w, "Welcome to the Home Page!")
}
func main() {
r := mux.NewRouter()
r.HandleFunc("/", HomeHandler)
http.ListenAndServe(":8080", r)
}外部パッケージを使用する場合
# 依存関係を自動で解決・追加
go mod tidyこれにより、go.modとgo.sumファイルが更新され、依存関係が管理されます。
従来のGOPATHと新しいGo Modulesの使い分け
| 項目 | GOPATH | Go Modules |
|---|---|---|
| 推奨度 | 旧方式 | 現在の標準 |
| プロジェクト場所 | $GOPATH/src以下 | 任意の場所 |
| 依存関係管理 | 手動 | 自動 |
| バージョン管理 | なし | あり |
学習段階では両方を理解することが重要ですが、実際の開発では Go Modules を使用することを強く推奨します。
まとめ
リンドくんGo言語の環境構築、思ったより簡単でした!これで開発が始められますね。
たなべその通り!環境構築は最初の一歩だけど、とても重要な基盤なんだ。
これからGo言語の魅力をたくさん発見していってほしいな。
この記事では、Go言語のインストールからGOROOT/GOPATHの設定、そして最新のGo Modulesまで、幅広くカバーしました。重要なポイントを振り返ってみましょう。
主要なポイント
- Go言語は環境構築が比較的シンプルで、一度設定すれば快適に開発できる
- GOROOTはGo言語本体の場所、GOPATHは作業ディレクトリの場所
- Go Modulesにより、現代的で柔軟な開発が可能
- 段階的に学習することで、無理なくスキルアップできる
Go言語は、シンプルながらも強力な言語です。環境構築という最初のハードルを越えることで、効率的で楽しいプログラミング体験が待っています。
次のステップとして、Go言語の基本文法や、より実践的なWebアプリケーション開発にも挑戦してみてください。
Go言語の世界は広く、学べば学ぶほど新しい発見があります。一緒にGo言語マスターを目指しましょう!





