go build main.go編譯後會在同級目錄生成可執行檔案
./main.exe2.1 伺服器上去編譯
安裝go,配置gopath
第一步,把伺服器上配置成本地一樣的環境
第二部,包括專案裡面所依賴的包
第三步,專案原始碼拷貝到與伺服器,伺服器上編譯
go build main.go編譯後會在同級目錄生成可執行檔案
./main執行。如果想讓專案在後台執行:執行
nohup ./main &這樣就可以程式在後台執行了。
注意:發現如果按照官方給的安裝方法只指定goroot的路徑,於是自己新建乙個目錄gopath 作為gopath 的目錄,並且設定環境變數(exportgopath=/newhome/go/gopath)。
在gopath下新建3個資料夾(模仿windows gopath的方式,也是go語言的工作環境目錄)分別為 src、pkg、bin目錄。
2.2 本地編譯
第一步:cmd控制台到main.go檔案目錄下,執行下面的操作。
set goarch=amd64會生成乙個沒有字尾的二進位制檔案set goos=linux
go build main.go
main第二步:將該檔案放入linux系統某個資料夾下
rz main第三步:賦予許可權
chmod 777 main最後執行
./main如果想讓專案在後台執行:執行
nohup ./main &這樣就可以程式在後台執行了。
mac 下編譯 linux 和 windows 64位可執行程式
1 cgo_enabled=0 goos=linux goarch=amd64 go build main.golinux 下編譯 mac 和 windows 64位可執行程式2 cgo_enabled=0 goos=windows goarch=amd64 go build main.go
1 cgo_enabled=0 goos=darwin goarch=amd64 go build main.gowindows 下編譯 mac 和 linux 64位可執行程式2 cgo_enabled=0 goos=windows goarch=amd64 go build main.go
1 set cgo_enabled=0goos:目標平台的作業系統(darwin、freebsd、linux、windows)2 set goos=darwin
3 set goarch=amd64
4 go build main.go
5 6 set cgo_enabled=0
7 set goos=linux
8 set goarch=amd64
9 go build main.go
goarch:目標平台的體系架構(386、amd64、arm)
交叉編譯不支援 cgo 所以要禁用它
上面的命令編譯 64 位可執行程式,你當然應該也會使用 386 編譯 32 位可執行程式
很多部落格都提到要先增加對其它平台的支援,但是我跳過那一步,上面所列的命令也都能成功,且得到我想要的結果,可見那一步應該是非必須的,或是我所使用的 go 版本已預設支援所有平台。
結束!
GO專案編譯及執行
我安裝了go語言環境,使用jetbrains goland開發工具開啟專案,然後 run 報錯了。錯誤定位在主函式main.go裡,這一句 import fmt github.com go sql driver mysql 就說找不到相關的包。我不太清楚確切的因由,像 github.com go s...
go 專案構建及編譯
src 源 檔案 pkg 包檔案 bin 相關bin檔案 1 建立工程資料夾 goproject 2 在工程資料夾中建立 src,pkg,bin 資料夾 3 在gopath中新增project路徑 例 e goprojet 4 如工程中有自己的包examplepackage,那麼src資料夾下建立以...
Go專案熱編譯工具gowatch
在golang專案編寫過程中,需要不斷的進行更改 除錯 開發 但是每一次更改完 之後,需要停止服務,再重新編譯執行,才能看到效果,每次手動進行都很麻煩,所以就找了乙個這樣的開源工具gowatch來實時監聽檔案的改動進行編譯。go get github.com silenceper gowatch安裝...