1. 程式人生 > >go build和go install的區別

go build和go install的區別

go build


通過go build加上要編譯的Go原始檔名,我們即可得到一個可執行檔案,預設情況下這個檔案的名字為原始檔名字去掉.go字尾。

$ go build hello.go
$ lshello hello.go


當然我們也 可以通過-o選項來指定其他名字:

$ go build -o mygo hello.go
$ lsmygo hello.go


如果我們在go-examples目錄下直接執行go build命令,後面不帶檔名,我們將得到一個與目錄名同名的可執行檔案:

$ go build
$ lsgo-examples hello.go


go install


與build命令相比,install命令在編譯原始碼後還會將可執行檔案或庫檔案安裝到約定的目錄下。

  • go install編譯出的可執行檔案以其所在目錄名(DIR)命名
  • go install將可執行檔案安裝到與src同級別的bin目錄下,bin目錄由go install自動建立
  • go install將可執行檔案依賴的各種package編譯後,放在與src同級別的pkg目錄下