go install 是 Go 中自動包安裝工具:如需要將包安裝到本地它會從遠(yuǎn)端倉庫下載包:檢出、編譯和安裝一氣呵成。
在包安裝前的先決條件是要自動處理包自身依賴關(guān)系的安裝。被依賴的包也會安裝到子目錄下,但是沒有文檔和示例:可以到網(wǎng)上瀏覽。
go install 使用了 GOPATH 變量(詳見第 2.2 節(jié))。
遠(yuǎn)端包(詳見第 9.5 節(jié)):
假設(shè)我們要安裝一個有趣的包 tideland(它包含了許多幫助示例,參見 項目主頁)。
因為我們需要創(chuàng)建目錄在 Go 安裝目錄下,所以我們需要使用 root 或者 su 的身份執(zhí)行命令。
確保 Go 環(huán)境變量已經(jīng)設(shè)置在 root 用戶下的 ./bashrc 文件中。
使用命令安裝:go install tideland-cgl.googlecode.com/hg。
可執(zhí)行文件 hg.a 將被放到 $GOROOT/pkg/linux_amd64/tideland-cgl.googlecode.com 目錄下,源碼文件被放置在 $GOROOT/src/tideland-cgl.googlecode.com/hg 目錄下,同樣有個 hg.a 放置在 _obj 的子目錄下。
現(xiàn)在就可以在 go 代碼中使用這個包中的功能了,例如使用包名 cgl 導(dǎo)入:
import cgl "tideland-cgl.googlecode.com/hg"
從 Go1 起 go install 安裝 Google Code 的導(dǎo)入路徑形式是:"code.google.com/p/tideland-cgl"
升級到新的版本:
更新到新版本的 Go 之后本地安裝包的二進(jìn)制文件將全被刪除。如果你想更新,重編譯、重安裝所有的go安裝包可以使用:go install -a。
go 的版本發(fā)布的很頻繁,所以需要注意發(fā)布版本和包的兼容性。go1 之后都是自己編譯自己了。
go install 同樣可以使用 go install 編譯鏈接并安裝本地自己的包(詳見第 9.8.2 節(jié))。
更多信息可以在 官方網(wǎng)站 找到。