0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Google Colabで書いたGo言語のプログラムのビルド・コンパイルまで一気に行う

0
Last updated at Posted at 2026-07-01

Google Colabというと、Pythonや機械学習の実行環境というイメージが強いかもしれません。

しかし、少し工夫するだけで、Go言語の開発環境としても利用できます。

本記事では、

  • Google Colab上でGo言語を利用する
  • Goプログラムを実行する
  • バイナリをビルドする
  • 作成した実行ファイルをダウンロードする

までの流れを紹介します。

対象読者

  • Google Colabを使ったことがある人
  • Go言語を学習してみたい人
  • ローカル環境を汚さずにGoを試したい人

なお、「Google ColabでGoのプログラミングを進めるイメージが全然わかない!」という人は、まずは下記記事を読んでみてください。

まずは、簡単な例でプログラムファイルを作る→実行

セルで、以下の記述を実行します。ここまでは、Google Colabで、あえてGo言語のプログラミングをする -最低限でハローワールド編のおさらいです。

%%writefile main.go
package main

import "fmt"

func main() {
    fmt.Println("Hello from Go on Google Colab")
}

書いたら、実行します。

!go run main.go

文法が壊れていなければ、Hello, Go from Google Colab!とでます。

コンパイルする

続いて、main.goを、コンパイルして、バイナリ(機械語)に変換します。
下記のコマンドで、main.goのプログラムファイルから、helloというバイナリファイルが生成できます。

!go build -o hello main.go

作成できると、左のメニュー上にも、バイナリファイルが出現します。
image.png

ビルドしたバイナリを実行

作ったバイナリは、下記のような指定で直接実行できます。

!./hello

Colabから、自分のマシンにダウンロードすれば、ローカルマシンでも実行できるようになります。

※ただし、実行マシンのOS/CPU等に合わせたパラメーター指定に注意。これについては次章。

いろいろなOS向けにビルドする

Go言語の大きな特徴のひとつが、クロスコンパイルです。
つまり、ビルド時に環境変数を指定するだけで、現在動いている環境とは別のOS向けの実行ファイルを作成できます。言い方を変えると、バイナリを実行するときのOSと一致するように、ビルドする必要があるということです。

指定する主なパラメータは以下の2つです。

項目 意味
GOOS 対象OS
GOARCH 対象CPUアーキテクチャ

例えば、Apple Silicon搭載Mac向けのバイナリを生成する場合は以下のようになります。

GOOS=darwin GOARCH=arm64 go build -o hello main.go

代表的な組み合わせは以下の通りです。

Windows向け

GOOS=windows GOARCH=amd64 go build -o hello.exe main.go

Linuxサーバー向け

GOOS=linux GOARCH=amd64 go build -o hello-linux main.go

Intel Mac向け

GOOS=darwin GOARCH=amd64 go build -o hello-intel-mac main.go

Apple Silicon Mac向け

GOOS=darwin GOARCH=arm64 go build -o hello-apple-silicon main.go

主な値

GOOS 対象
linux Linux
windows Windows
darwin macOS
GOARCH 対象
amd64 Intel / AMD 64bit CPU
arm64 Apple Silicon

このように、Google ColabはLinux環境ですが、WindowsやMac向けの実行ファイルも生成できます。

さいごに

プログラムを完成させたら、バイナリ(機械語)にしてからツール配布することで、

  • いろいろなマシンで、環境構築不要で動くツールが作れる
  • 実行時間も早くて快適

というのがGo言語の世界だと思います。

Google Colabの環境下で、手軽に、「ツールを作って、配る」Go言語の面白さが伝われば幸いです。

弊社について

本記事を書いている 合同会社インクルーシブソリューションズ は、データ基盤構築・分析基盤設計・システム改善支援を中心に活動している小規模IT法人です。

主な領域は、

  • データマート設計・データパイプライン構築
  • SQL / Python を用いたデータ処理設計
  • BI導入支援・分析基盤の整備
  • 既存システムの運用改善・可視化支援

といった、「データを使える状態にする」ための活動です。

弊社の企業活動に興味がある方は、ぜひ公式サイトも覗いてみてください。

以下は余談:Go言語のクロスコンパイルについて

下記画像は、友人に協力してもらってGoのクロスコンパイルを検証していたときのチャット履歴。筆者(安部 航祐)のMacBookで、プログラミング⇨ビルドを行い、Go言語の環境構築ナシのWindowsで実行に成功したときのもの。

Go言語の「クロスコンパイル」の手触りを知る参考資料として掲載しておきます。
IMG_1231.jpeg

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?