[記錄] Golang Hello on Windows

  • 1660
  • 0
  • 2019-10-13

想在 Winodws 玩點 Go 但遇到不少問題,GVM 也是 Mac、Linux 有,但Windows 沒有,所以就記錄一下。

安裝


到官網下載安裝檔執行,會問你要裝在哪,預設是 C:\Go,然後試試是否可以呼叫,打開 cmd 輸入指令

where go

找不到 go,where to go?一般這種狀況就是環境變數要調整。

Path

如果安裝 Go 使用預設路徑,檢查環境變數 Path 是否有 C:\Go\bin\ 無則添上。

關於如何進到環境變數設定頁面,可以打開檔案總管 > 本機右鍵內容 > 進階系統設定 > 進階頁 > 環境變數

設定完重開機,就可以了。

Hello, World

建立 hello.go

package main

import "fmt"

func main() {
	fmt.Printf("hello, world\n")
}

在 hello.go 資料夾執行指令

go run hello.go

如果看到 hello. world 算是初步安裝好了。

go run 會執行 go 檔,而 go build 可以產生 exe 執行檔,這個執行檔可以在沒有安裝 Go 的環境執行。

go build hello.go

後記

關於安裝,我之後在另一台電腦安裝並沒有環境變數要調整的問題,而原來電腦在一次意外後,移除 Go 改用 Chocolatey 安裝也沒有環境變數要調整的問題。

Go 不只可以編譯執行檔還可以編譯 C/C++ 使用的 dll 而.NET 同樣也能以 DllImport 的方式來引用。

思考 Go 即使在是以 .NET 為主力的環境,似乎也頗具吸引力,可製作跨平台的 CLI 工具,相比 .NET Core、Node.js 在客戶端的安裝需求也幾乎沒有,需要的時候可以把邏輯包成 dll 給 .NET 使用,避免重造輪子,而 Go 也可以引用 .NET dll。