1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Windowsでインストーラに頼らないGoの始め方

Posted at

はじめに

Goをちょっと試したいと思ったが、気軽にインストーラでインストールして、何が起こっているかわからないのは気持ちが悪かったので、インストーラに頼らずインストールをしてみようと考えた。
基本的に公式ドキュメントの通りに実行していく。

環境

OS:Windows10 64bit(バージョン1809)

インストール

  1. ダウンロード
    https://golang.org/dl/ にて最新(記載時はgo1.12.5)の64bit用zipファイル(~amd64.zip)をダウンロードする。
  2. ファイルを展開
    公式推奨のc:\Goにzipを展開する。
    c:\Go\binとなるようにする。)
  3. 環境変数を追加
    PATHc:\Go\binを追加する。
  4. 確認
    コマンドプロンプトを開きgo versionを実行する。
    以下のように出力されたらインストールは成功している。
> go version
go version go1.12.5 windows/amd64

hello, world

お約束のhello, worldを出力する。
インストールが成功したら、どのディレクトでもソースをコンパイルと実行ができると思う。しかし、下手に公式推奨から外れると後々パッケージ管理や各種ライブラリの関係で不具合が発生すると初心者には色々厄介そうなので、公式推奨に乗っかることにする。
Goにはワークスペースという概念があるが、正確には理解していないためとりあえず公式ドキュメントに書いてあるとおりに実行していく。

  1. ワークスペースを作成
    %USERPROFILE%\goというディレクトを作成する。
    ここがGoにおける作業場所のルートになっている様子。
    %USERPROFILE%がどこだかわからない場合はecho %USERPROFILE%cd %USERPROFILE%などを実行すると良い。

  2. ソース作成
    %USERPROFILE%\go\src\hello\hello.goをディレクトリとともに作成する。
    ソースは以下のとおり。

    hello.go
    package main
    
    import "fmt"
    
    func main() {
        fmt.Printf("hello, world\n")
    }
    
  3. コンパイルと実行
    以下のとおり実行すると、cd %USERPROFILE%\go\src\hello\hello.exeが作成される。

    > cd %USERPROFILE%\go\src\hello
    > go build
    

続けて実行すると以下の通りとなる。

```
> hello
hello, world
```

アンインストール

これまで作成したディレクトと環境変数を削除します。
具体的には、c:\Go%USERPROFILE%\goをまるごと削除し、環境変数PATHに追加したc:\Go\binを削除します。

おわり

各種ライブラリの導入(go get ...)をした場合、アンインストールするには、他にもディレクトを削除する必要があるかもしれませんが、そこまで試せていません。
基本文法を試す程度であれば、%USERPROFILE%\go\src以下にディレクトリを作成してソースを書いていけば、先のアンインストール手順で環境はもとに戻ると思います。

1
2
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
1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?