在Windows中編譯Linux運行的Golang程序
參考如下
參考如下:
打開CMD,先修改Go環境參數,然后再編譯。編譯結束恢復為windows的環境參數。
注意:不知道為什么,在VsCode的Terminal中操作時會失敗,但是在cmd.exe中是可以的。
第一步,修改go環境參數
SET CGO_ENABLED=0 SET GOOS=linux SET GOARCH=amd64
設置完之后,可以查看一下設置是否生效:
go env CGO_ENABLED go env GOOS go env GOARCH
第二步,編譯
環境參數設置為linux編譯時的參數后,即可正常編譯:
go build main.go
第三步,將環境參數改回windows
也可不改回,取決於具體需要
SET CGO_ENABLED=1 SET GOOS=windows SET GOARCH=amd64
.
可以將上述命令卸載一個.bat里面,每次編譯時直接運行.bat即可:
SET CGO_ENABLED=0 SET GOOS=linux SET GOARCH=amd64 echo now the CGO_ENABLED: go env CGO_ENABLED echo now the GOOS: go env GOOS echo now the GOARCH: go env GOARCH go build main.go SET CGO_ENABLED=1 SET GOOS=windows SET GOARCH=amd64 echo now the CGO_ENABLED: go env CGO_ENABLED echo now the GOOS: go env GOOS echo now the GOARCH: go env GOARCH