首頁  >  文章  >  後端開發  >  go語言中go build和go install的區別

go語言中go build和go install的區別

尚
轉載
2019-11-28 14:57:583071瀏覽

go語言中go build和go install的區別

go buildgo build 用於測試編譯包,主要檢查是否會有編譯錯誤,如果是一個可執行檔的原始碼(即是main 套件),就會直接產生一個可執行檔。

go install:go install 的作用有兩步:第一步是編譯導入的包文件,所有導入的包文件編譯完才會編譯主程式;第二步是將編譯後產生的可執行檔放到bin 目錄下($GOPATH/bin),編譯後的套件檔放到pkg 目錄下($GOPATH/pkg)。

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目錄下

推薦:go語言教學

以上是go語言中go build和go install的區別的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:csdn.net。如有侵權,請聯絡admin@php.cn刪除