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

相关推荐
锋行天下5 小时前
一句mysql复杂查询搞崩一个壮汉
后端·mysql·go
用户398346161207 小时前
Go-Spring 实战第 13 课 —— Bean 元信息:名称、生命周期、接口导出、条件和显式依赖
spring·go
猪猪拆迁队10 小时前
用 ESP32-S3 和 TinyGo,先搭个 AI 语音助手的小底座
前端·后端·go
Vect__13 小时前
C++转go之map、面向对象深度剖析
开发语言·c++·golang
codeejun13 小时前
每日一Go-68、基于 Kind 的 Istio 本地实战(完整可跑)
golang·istio·kind
geovindu13 小时前
go: N-Barrier Pattern
开发语言·后端·设计模式·golang·屏障模式
喵了几个咪14 小时前
Go + Vue/React 全栈开发实践
vue.js·react.js·golang·elementplus·vben·go-kratos
姚不倒1 天前
从零实现一个基于 Ollama + Go + MySQL 的 Text-to-SQL 智能体(M1 实战)
sql·mysql·云原生·golang
赫媒派1 天前
炸裂!Go 1.26 三连发:go fix 现代化、pkg.go.dev API 开放、源码级内联器
go
用户398346161201 天前
Go-Spring 实战第 11 课 —— 依赖注入的目标:单 Bean 注入和集合注入
spring·go