這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。
本篇部落客要是介紹在 windows 下搭建 go 開發環境,因為 linux 下相對 windows 甚至更方便一些 (really?);如果你是關心的是 linux 的安裝,直接跳到 linux 下安裝 go 吧。廢話不多說,去 go 的官網,下載 go 的 windows 版本。有 zip 檔案下載,直接解壓縮使用,不用選擇 msi 安裝。或是你直接到 golang:windows下安裝go。
說點廢話。me 為嘛選擇 zip 而不是 msi 呢?相對來說,me 更喜歡綠色軟體,解壓之後基本就可以使用了,不過有個缺點就是,us 需要自己註冊環境變數(相信對於程式猿來說介太 easy 了)。msi/exe 的工作之一就是解壓縮,另一些就是自動添加某些環境變數,還可能就是往註冊表中寫入一些東西。好吧,me 喜歡 zip。
windows 下安裝 go
- 下載到某個盤下,比如 D:\google\golang 目錄下;
- 在環境變數 path 中加入 go 命令的路徑,比如 D:\google\golang\golang\bin; (注意分號!)這個地球人都知道,就是為了能在 cmd 中直接使用 go 的命令;
- 建立 GOROOT 變數,值為 go 的檔案夾路徑,比如 D:\google\golang\golang,這裡是沒有分號的;
hello,world 測試
建立 hello.go 檔案;內容如下:
- package main
-
- import "fmt"
-
- func main() {
- fmt.Println("hello, world")
- }
在 cmd 中切換到 hello.go 所在的目錄,運行命令:go run hello.go,能正常輸出 hello,world 即可;一般不會出問題,腫麼可能出問題呢 ? O__O"…。
hello,世界 測試(中文支援測試)
建立 hello.go 檔案;內容如下:
- package main
-
- import "fmt"
-
- func main() {
- fmt.Println("hello,世界")
- }
在 cmd 中切換到 hello.go 所在的目錄,運行命令:go run hello.go,windows 下一般會出問題,要麼編譯通不過,要麼,中文是亂碼;一是檔案編碼的問題,而是 cmd 的字碼頁(編碼)的問題,兩者都應該是 utf-8 才對,而且是不帶 BOM 的 utf-8 (不帶 BOM !!!)。
- 修改 hello.go 的檔案編碼為 utf-8 不帶 BOM,一般的編譯器都有選擇;
- 在 cmd 中敲入 chcp 65001 可以將字碼頁換成 utf-8;同時在 cmd 上將 屬性 -> 字型 修改為 Consolas 或是 Lucida Console ,總之不是點陣字型就好;
經過上述修改,運行
go run hello.go,應該就會有
hello,世界 了!
字碼頁的問題很少困擾 us,but 有時候就是會出現,這裡是一點。還有一點可能要注意,使用 goagent 翻牆的話,運行上傳代碼的 bat 需要字碼頁要是 GBK (936),否則上傳代碼會失敗,介是經驗,O__O"…。
Notepad++ 中文法高亮:
go 語言下載的包中就有很多編輯器的文法高亮設定檔,比如 notepad++ 的就在 misc/notepadplus 下,裡面有個 readme,可以按照那個來就可以;這裡就是重複說明一下而已:
- 將 misc/notepadplus/go.xml 拷貝到 notepad++ 安裝目錄的 plugins/APIs 下;
- 將 misc/notepadplus/userDefineLang.xml 的內容拷貝到 notepad++ 的安裝目錄下的 userDefineLang.xml 中去;如果該檔案不存在的話,直接將檔案複製過去,但是必須在檔案內容前後加上標籤 ;
- 在 notepad++ 語言 -> 自訂語言中,匯入 userDefineLang.xml 檔案;如果自訂語言菜單打不開,那麼在工具列按鈕中找;匯入之後,基本就可以使用文法高亮了;
- 如果你想用 notepad++ 直接開啟 .go 檔案,只需要在 設定 -> 喜好 中將 .go 關聯一下就好了;
Notepad++ 運行 go 程式:
因為 notepad++ 可以執行外部命令,所以,偶們可以在 notepad++ 設定快速鍵,直接讓它運行
go run 命令,查看結果,然後退出,很是方便。
- 在運行 run 菜單下有個 run 子功能表,開啟;或是直接 F5 開啟;
- 編輯一下命令,就是在 cmd 中 go run 當前檔案,然後等待敲一下鍵,最後退出:
cmd /K go run "$(FULL_CURRENT_PATH)" & pause & exit
- 命令敲進去後,儲存為某個快速鍵,比如 Ctrl + Shift + G,起個名字 golang run,當然這裡就隨意了,不過不能與已定義的重複,否則可能無效;
linux 下 go 的安裝:
也許 u 安裝的 gcc 中就有 go ,這是可能的,這樣的話就不用安裝了(不過可能不是最新的版本)。linux 下的東西,可以選擇二進位安裝,不過更多的時候是原始碼安裝,me 這裡使用的二進位安裝,基本還是解壓縮一下就使用,也是 so easy !(其實原始碼也不會難到哪裡,基本就是 ./configure + make + make install 一下,O__O"…)
- 去官網找到 linux 下的二進位安裝檔案,比如,me 的是 go1.0.3.linux-amd64.tar.gz;
- 在某個檔案夾下,比如 me 的是在 App 檔案加下,解壓縮該檔案;
tar -zxvf go1.0.3.linux-amd64.tar.gz
- 設定環境變數,注意自己包所在的路徑,me 的是在 App 目錄下:
export GOROOT=$HOME/App/goexport PATH=$PATH:$GOROOT/bin
- 寫個 hello.go 測試一下,基本麼有其他問題!多語言支援,貌似一般都不會有,如果 u 可以打中文,說明基本已經是 UTF-8 勒。