golang 交叉编译 linux,Golang 多平台交叉编译

本文介绍了如何在不同操作系统环境下,使用Golang进行交叉编译,生成可在其他平台运行的可执行文件。通过设置GOOS和GOARCH变量,如在Windows上编译Linux或Mac程序,无需目标平台的Go环境即可直接运行。详细步骤包括在Mac、Linux和Windows下编译不同平台的命令,强调了禁用CGO的重要性。
摘要由CSDN通过智能技术生成

AAffA0nNPuCLAAAAAElFTkSuQmCC

Golang

介绍

一直以来都是在windows上写go,从来没有试过如何在windows环境下编译成mac或linux环境下可执行的文件。

当然,我的要求是在别的环境中不用安装go的环境。可直接运行的那种。

在这里,我也做一份备忘。

mac

Mac 下编译 Linux 64位可执行程序CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build main.go

Mac 下编译 Windows 64位可执行程序CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build main.go

linux

Linux 下编译 Mac 64位可执行程序CGO_ENABLED=0 GOOS=darwin GOARCH=amd64 go build main.go

Linux 下编译 Windows 64位可执行程序CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build main.go

windows

Windows 下编译 Mac 64位可执行程序SET CGO_ENABLED=0SET GOOS=darwin

SET GOARCH=amd64

go build main.go

Windows 下编译 Linux 64位可执行程序SET CGO_ENABLED=0SET GOOS=linux

SET GOARCH=amd64

go build main.go

参数介绍

GOOS :目标平台的操作系统(darwin、freebsd、linux、windows)

GOARCH :目标平台的体系架构(386、amd64、arm)

交叉编译不支持 CGO 所以要禁用它

上面的命令编译 64 位可执行程序,你当然应该也会使用 386 编译 32 位可执行程序

本文为原创,转载请注明出处:

Golang 多平台交叉编译

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值