go语言window|mac|linux下交叉编译其他平台的软件包

go语言window|mac|linux下交叉编译其他平台的软件包

注意:go1.17 发现直接使用set 是不起作用的, 必须要使用go env -w 来设置

一、设置编译环境,需要发布哪个平台

Window下

1、 设置Linux编译环境
Go 复制代码
SET CGO_ENABLED=0
set GOARCH=amd64
set GOOS=linux
2、设置Mac编译环境
Go 复制代码
go env -w  CGO_ENABLED=0
go env -w  GOOS=darwin
go env -w  GOARCH=amd64

Linux下

Go 复制代码
# Mac
CGO_ENABLED=0 GOOS=darwin GOARCH=amd64 go build filename.go
 
# Windows
CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build filename.go

Mac下

Go 复制代码
# Linux
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build filename.go
 
# Windows
CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build filename.go
如: CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build -o helloworld-windows helloworld.go

二、开始编译

Go 复制代码
go build -o ./"要生成的文件 .\源代码

设置环境后,在自己的命令行窗口运行 go env命令,查看你刚刚修改的参数是否修改了,修改后,即可进行编译;

相关推荐
__AtYou__3 小时前
Golang | Leetcode Golang题解之第557题反转字符串中的单词III
leetcode·golang·题解
程序猿-瑞瑞5 小时前
11 go语言(golang) - 数据类型:结构体
开发语言·golang
宋发元8 小时前
Go 数据库查询与结构体映射
数据库·oracle·golang
清北_8 小时前
Go常见框架对比
前端·golang·gin
老大白菜9 小时前
goframe开发一个企业网站 验证码17
运维·docker·容器·golang·goframe
杜杜的man10 小时前
【go从零单排】Stateful Goroutines(有状态的 goroutines)
开发语言·后端·golang
Chrikk11 小时前
Go-一文打尽基础语法实例
开发语言·后端·golang
研究司马懿11 小时前
【Golang】Go语言环境安装
开发语言·后端·云原生·golang·二开
恬淡虚无真气从之11 小时前
go 下划线 _ 被称为“空白标识符
开发语言·后端·golang
jerry60911 小时前
go语言 分布式一致
开发语言·分布式·golang