相同點
都能生成可執行文件
不同點
go build 不能生成包文件, go install 可以生成包文件
go build 生成可執行文件在當前目錄下, go install 生成可執行文件在bin目錄下($GOPATH/bin)
go build 經常用於編譯測試.go install主要用於生產庫和工具.
通過go build加上要編譯的Go源文件名,我們即可得到一個可執行文件(二進制文件),默認情況下這個文件的名字為源文件名字去掉.go后綴,windows后綴改為.exe.
如果直接在源碼的當前目錄下直接執行go build命令,后面不帶文件名,我們將得到一個與目錄名同名的可執行文件.
與build命令相比,install命令在編譯源碼后還會將可執行文件或庫文件安裝到約定的目錄下
- go install編譯出的可執行文件以其所在目錄名(DIR)命名
- go install將可執行文件安裝到與src同級別的bin目錄下,bin目錄由go install自動創建
- go install將可執行文件依賴的各種package編譯后,放在與src同級別的pkg目錄下.