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命令,查看你刚刚修改的参数是否修改了,修改后,即可进行编译;

相关推荐
idcu7 分钟前
CodeSchema 开源首发:一个给 AI 编码助手「喂」精准代码上下文的索引服务
开源·go·ai编程
小翰生信2 小时前
转录组下游分析全流程:DESeq2 差异分析、GO/KEGG 富集与 GSEA 实战
数据库·矩阵·golang
Data_Journal18 小时前
Scrapyd:分步教程
开发语言·python·microsoft·golang·编辑器·html·iphone
程序员小八77721 小时前
Go Web 工程化:日志、配置与错误处理中间件,让服务「能上线」
前端·中间件·golang
newerp1 天前
Golang 切片扩容策略
后端·程序员·go
我的div丢了肿么办1 天前
go中make声明切片, 修改切片,append给切片扩容,合并切片,复制切片
后端·go
纪卓志George1 天前
保守十四年:Go 的泛型方法与丢失的定位
go
运维开发笔记1 天前
8.3 Go Struct 嵌入学习笔记
go
xiangjiaodalishi1 天前
2026年GEO生成式引擎优化服务商观察:企业如何挑选适配自身的AI营销协作伙伴
go
蛋先生DX1 天前
明明都是源码到CPU,各语言中间原理咋不是一个套路?
java·javascript·go