ubuntu 16.04
golang
$ sudo apt-
get install golang
$ sudo apt golang-go
使用
go version
得到如下結果
在ubuntu下使用命令
在/home目錄下, 建立乙個名為gopath(名字任意)的目錄,在該目錄中建立三個子目錄(名字必須為src、pkg和bin)
mkdir ~/gopath
cd ~/gopath
mkdir src
mkdir bin
mkdir pkg
gedit ~/.bashrc
將如下語句新增到配置檔案末尾
export gopath=/home/gopath
source ~/.bashrc
得到截圖結果
使用命令
得到結果
go install golang.org/x/tools/go/buildutil
退出 vscode,再進入,按提示安裝
參照go語言官方文件
讓我們編寫乙個庫,並讓 hello 程式來使用它。
同樣,第一步還是選擇包路徑(我們將使用 github.com/github-user/stringutil)
並建立包目錄:
$ mkdir $gopath/src/github.com/github-user/stringutil
接著,在該目錄中建立名為 reverse.go 的檔案,內容如下:
現在用 go build 命令來測試該包的編譯:// stringutil 包含有用於處理字串的工具函式。
package stringutil
// reverse 將其實參字串以符文為單位左右反轉。
func
reverse
(s string
)string
return
string
(r)}
$ go build github.com/user/stringutil
當然,若你在該包的原始碼目錄中,只需執行:
$ go build
即可。這不會產生輸出檔案。想要輸出的話,必須使用 go install命令,它會將包的物件放到工作空間的 pkg 目錄中。
確認 stringutil 包構建完畢後,修改原來的 hello.go檔案(它位於 $gopath/src/github.com/user/hello)去使用它:
無論是安裝包還是二進位制檔案,go 工具都會安裝它所依賴的任何東西。
因此當我們通過
$ go install github.com/user/hello
來安裝 hello 程式時,stringutil 包也會被自動安裝。
執行此程式的新版本,你應該能看到一條新的,反向的資訊:
做完上面這些步驟後,你的工作空間應該是這樣的:$ hello
hello, go!
注意 go install 會將 stringutil.a 物件放到pkg/linux_amd64 目錄中,它會反映出其原始碼目錄。bin/
hello # 可執行命令
pkg/
linux_amd64/ # 這裡會反映出你的作業系統和架構
stringutil.a # 包物件
src/
hello/
hello.go # 命令原始碼
stringutil/
reverse.go # 包原始碼
這就是在此之後呼叫 go 工具,能找到包物件並避免不必要的重新編譯的原因。
linux_amd64 這部分能幫助跨平台編譯,並反映出你的作業系統和架構。
go的可執行命令是靜態鏈結的;在執行go程式時,包物件無需存在。
go原始檔中的第乙個語句必須是
package 名稱
這裡的 名稱 即為匯入該包時使用的預設名稱。(乙個包中的所有檔案都必須使用相同的 名稱。)
go的約定是包名為匯入路徑的最後乙個元素:作為 「crypto/rot13」匯入的包應命名為 rot13。
可執行命令必須使用package main。
鏈結成單個二進位制檔案的所有包,其包名無需是唯一的,只有匯入路徑(它們的完整檔名才是唯一的。
更多關於go的命名約定見實效go教程。
go擁有乙個輕量級的測試框架,它由 go test 命令和 testing
包構成。
你可以通過建立乙個名字以 _test.go 結尾的,包含名為test*** 且簽名為 func (t *testing.t) 函式的檔案來編寫測試。
測試框架會執行每乙個這樣的函式;若該函式呼叫了像 t.error 或
t.fail 這樣表示失敗的函式,此測試即表示失敗。
我們可通過建立檔案 $gopath/src/github.com/github-user/stringutil/reverse_test.go
來為 stringutil 新增測試,其內容如下:
接著使用 go test 執行該測試:package stringutil
import
"testing"
func
testreverse
(t *testing.t),,
,}for_
, c :=
range cases
}}
同樣,若你在包目錄下執行 go 工具,也可以忽略包路徑
測試結果如圖示
該包執行正常
chmod -r 777 (資料夾路徑)
來解決
3.在配置過程中遇到了虛擬機器卡頓,以致部分配置過程沒有留下截圖
go語言環境配置
官網 go語言的安裝 預設安裝,被安裝了 usr local go 目錄 並自設定了環境變數。go env 可檢視目前的go的環境變數 這go就可以執行了,下面還要配置乙個gopath環境變數,是工作目錄。根據約定,gopath下需要建立3個目錄 bin 儲存編譯後的可執行檔案 pkg 存放編譯後生...
go語言 環境配置
安裝軟體一般有兩類 三種 方式 使用編譯好的二進位制檔案 ubuntu系統選擇下面這個 解壓之後,配置環境變數,例如 在 bashrc中配置 配置好後,source bashrc就好了 自行編譯原始碼 go語言實現語言 go從1.5版本開始實現 自舉 bootstrap 也就是用go來實現go 之前...
1,安裝go語言開發環境
go語言官方支援兩種編譯工具鏈gc和gccgo,但是其中gc更加成熟。因此本文將學習如何安裝更加成熟的gc工具。目前gc工具鏈只支援一下作業系統和體系結構。operating system architectures notes freebsd 7 or later amd64,386 debian...