2 回答

TA貢獻(xiàn)1810條經(jīng)驗 獲得超4個贊
正如@JimB 所說,install是為包設(shè)計的命令。只是給你一個明確的例子,這是我運行g(shù)o env命令時得到的。
GOARCH="amd64"
GOBIN="/Users/quazinafiulislam/Code/go/ogolang/bin"
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOOS="darwin"
GOPATH="/Users/quazinafiulislam/Code/go/ogolang"
GORACE=""
GOROOT="/usr/local/Cellar/go/1.5.1/libexec"
GOTOOLDIR="/usr/local/Cellar/go/1.5.1/libexec/pkg/tool/darwin_amd64"
GO15VENDOREXPERIMENT=""
CC="clang"
GOGCCFLAGS="-fPIC -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fno-common"
CXX="clang++"
CGO_ENABLED="1"
您將看到GOPATH設(shè)置為我的項目根目錄~/Code/go/ogolang. 現(xiàn)在,讓我們看看我的項目根目錄中有什么。
.
├── bin
├── pkg
│ └── darwin_amd64
└── src
├── bitbucket.org
├── github.com
├── golang.org
├── words
└── wordtest
如您所見,我有幾個包。其中之一是wordtest。我可以go install在words或wordtest包上使用 a 。所以,讓我們運行g(shù)o install words看看目錄會發(fā)生什么。
.
├── bin
│ └── words
├── pkg
│ └── darwin_amd64
└── src
├── bitbucket.org
├── github.com
├── golang.org
├── words
└── wordtest
現(xiàn)在,我們可以看到我們words為我們創(chuàng)建了一個二進(jìn)制文件(在bin目錄中),我們可以通過調(diào)用./bin/words.

TA貢獻(xiàn)1900條經(jīng)驗 獲得超5個贊
根據(jù)Games Brainiacgo install 對軟件包的工作是正確的。但是讓我添加一些關(guān)于在主目錄中使用 go install 創(chuàng)建包的細(xì)節(jié)。
.
├── bin
│ └── app
├── pkg
│ └── linux_amd64
| └── user
| └── handlers.a
└── src
├── bitbucket.org
├── github.com
└── user
└── app
├── main.go
└── handlers
└──handlers.go
看看上面的目錄結(jié)構(gòu),我在一個包含源文件的文件夾處理程序中創(chuàng)建了一個包handlers.go。我想構(gòu)建那個包,我將go build在 handlers 文件夾中運行,它只是顯示我們的文件沒有編譯錯誤并且在這種情況下不返回任何內(nèi)容.
要使用主文件構(gòu)建包,我們需要go install在 app 文件夾中運行。這將在內(nèi)部創(chuàng)建 handlers.a 包對象,$GOPATH/pkg并在其中創(chuàng)建$GOPATH/bin帶有文件夾名稱的可執(zhí)行文件(app in this case),我們在其中使用包 main 擁有 main.go 文件。
- 2 回答
- 0 關(guān)注
- 225 瀏覽
添加回答
舉報