交叉编译 go语言l,可执行文件
在一个平台上生成另一个平台可执行的文件,就叫做交叉编译。
一个cpu体系可以有不同的操作系统,一个操作系统也可以使用不同的架构平台。
1.查看go版本:
go version
//go version go1.17.3 windows/amd64
2.交叉编译非常方便:
需要在cmd上设置环境变量:
set GOARCH=amd64
set GOOS=linux
go build
或
SET CGO_ENABLED=0 // 禁用CGO
SET GOOS=linux // 目标平台是linux
SET GOARCH=amd64 // 目标处理器架构是amd64
go build
Windows下编译Linux平台 可执行程序:
SET CGO_ENABLED=0 // 禁用CGO
SET GOOS=linux // 目标平台是linux
SET GOARCH=amd64 // 目标处理器架构是amd64
使用了cgo的代码是不支持跨平台编译的
然后再执行go build命令,得到的就是能够在Linux平台运行的可执行文件了。
Mac 下编译 Linux 和 Windows平台 64位 可执行程序:
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build
CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go bui

本文介绍了如何在Windows环境下使用Go语言进行交叉编译,生成能在Linux平台运行的可执行文件。由于使用cgo的代码不支持跨平台编译,所以编译时需注意避开这种情况。通过设置环境变量并执行`go build`命令,可以成功创建适用于不同目标平台的程序。
最低0.47元/天 解锁文章
473

被折叠的 条评论
为什么被折叠?



