go编译为linux可执行文件,go编译可执行文件
8種機械鍵盤軸體對比
本人程序員,要買一個寫代碼的鍵盤,請問紅軸和茶軸怎么選?
交叉編譯工具gox
Golang 交叉編譯跨平臺的可執行程序 (Mac、Linux、Windows )
Golang支持交叉編譯,也就是說你在32位平臺的機器上開發,可以編譯生成64位平臺上的可執行程序.mac 下可以編譯linux 下的執行程序 又或者windows下的執行程序
交叉編譯依賴下面幾個環境變量:
$GOARCH 目標平臺(編譯后的目標平臺)的處理器架構(386、amd64、arm)
$GOOS 目標平臺(編譯后的目標平臺)的操作系統(darwin、freebsd、linux、windows)OSARCHOS versionlinux386 / amd64 / arm>= Linux 2.6
darwin386 / amd64OS X (Snow Leopard + Lion)
freebsd386 / amd64>= FreeBSD 7
windows386 / amd64>= Windows 2000
不帶前面參數的 go build 只是編譯出開發環境適用的執行文件。
windows 下面的專有參數,去掉運行后的 dos 黑窗口
go build -ldflags=”-H windowsgui”
Mac 下編譯 Linux 和 Windows 64位可執行程序1
2
3
4
5
6CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build main.go
CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build main.go
CGO_ENABLED=0 GOOS=windows GOARCH=386 go build main.go
//編譯目錄
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build
Linux 下編譯 Mac 和 Windows 64位可執行程序1
2CGO_ENABLED=0 GOOS=darwin GOARCH=amd64 go build main.go
CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build main.go
Windows 下編譯 Mac 和 Linux 64位可執行程序1
2
3
4SET CGO_ENABLED=0
SET GOOS=darwin
SET GOARCH=amd64
go build main.go1
2
3
4SET CGO_ENABLED=0
SET GOOS=linux
SET GOARCH=amd64
go build main.go
靜態編譯 zmq1
2
3CGO_CPPFLAGS="-I/usr/include"
CGO_LDFLAGS="-L/usr/lib -L/usr/lib/z86_64-linux-gnu -lzmq -lpthread -lsodium -lrt -lstdc++ -lm -lc -lgcc"
go get --ldflags '-extldflags "-static"' -a myapp/usingzmq4
總結
以上是生活随笔為你收集整理的go编译为linux可执行文件,go编译可执行文件的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 电子元器件筛选公司/费用-电子元器件筛选
- 下一篇: Linux安装RDKit