您的位置 首页 golang

Golang 在 Mac、Linux、Windows 下如何交叉编译

golang-gopher.png

Golang 支持交叉编译,在一个平台上生成另一个平台的可执行程序。

Golang支持的平台和版本

$ go tool dist list

其实 Golang 的交叉编译非常简单,只需要在编译前指定系统和 CPU 架构,基本不会有任何问题,编译出来讲文件拷贝到对应平台就能跑。

Mac 下编译 Linux 和 Windows 64位可执行程序

CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build main.goCGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build main.go

Linux 下编译 Mac 和 Windows 64位可执行程序

CGO_ENABLED=0 GOOS=darwin GOARCH=amd64 go build main.goCGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build main.go

Windows 下编译 Mac 和 Linux 64位可执行程序

SET CGO_ENABLED=0SET GOOS=darwinSET GOARCH=amd64go build main.goSET CGO_ENABLED=0SET GOOS=linuxSET GOARCH=amd64go build main.go

GOOS:目标平台的操作系统(darwin、freebsd、linux、windows)
GOARCH:目标平台的体系架构(386、amd64、arm)

Golang 语言的交叉编译的坑,主要就坑在 CGO 上!

所以要禁用它,想用就参考这个页面:

https://blog.csdn.net/Three_dog/article/details/94640507

参考:

https://blog.csdn.net/panshiqu/article/details/53788067


文章来源:智云一二三科技

文章标题:Golang 在 Mac、Linux、Windows 下如何交叉编译

文章地址:https://www.zhihuclub.com/2412.shtml

关于作者: 智云科技

热门文章

发表评论

您的电子邮箱地址不会被公开。

网站地图