商城首页欢迎来到中国正版软件门户

您的位置:首页 >Ubuntu下Golang如何跨平台编译

Ubuntu下Golang如何跨平台编译

  发布于2026-08-06 阅读(0)

扫一扫,手机访问

在 Ubuntu 上做 Golang 开发,跨平台编译几乎是必会技能。毕竟你不可能每次都为了打个 Windows 包就换台机器。Go 的交叉编译机制简洁得令人舒适——只需改几个环境变量,就能把代码打包成任何主流平台的可执行文件。下面直接上手。

Ubuntu下Golang如何跨平台编译

第一步,确认 Go 已经装好。如果还没装,去 https://golang.org/dl/ 下载 Ubuntu 对应的版本,或者直接用包管理器,没什么难度。

第二步,打开终端,设置两个关键的环境变量:GOOSGOARCH。前者指定目标操作系统,后者指定架构。比如要编译 Windows 64 位程序,运行:

export GOOS=windows
export GOARCH=amd64

其他常见组合如下:

  • macOS(Darwin): GOOS=darwin, GOARCH=amd64
  • Linux: GOOS=linux, GOARCH=amd64(这是默认值,不设也行)
  • FreeBSD: GOOS=freebsd, GOARCH=amd64
  • OpenBSD: GOOS=openbsd, GOARCH=amd64
  • NetBSD: GOOS=netbsd, GOARCH=amd64

值得一提的是,Go 支持的目标平台远不止这些,还有 ARM、MIPS 等,但上面几个是日常最常用的。

第三步,环境变量设好后,直接 go build 编译你的源文件。假设你的入口文件是 main.go

go build main.go

编译成功后,当前目录下会生成一个可执行文件——注意,它的名字和扩展名会随目标平台自动适配(比如 Windows 下会带 .exe)。你可以直接将它扔到对应系统里运行,完全不需要额外配置。

第四步,如果后续想切回编译本地平台,记得取消设置:

unset GOOS
unset GOARCH

这样环境变量就恢复默认值了。当然,你也可以直接关闭终端重新打开,效果一样。

整个过程就这么简单。Go 的交叉编译不需要额外安装任何工具链,也不需要修改代码,这是它相较于其他语言的一大优势。下次需要给同事发个 Windows 工具,或者部署到树莓派上,几行命令就能搞定。

本文转载于:https://www.yisu.com/ask/14943957.html 如有侵犯,请联系zhengruancom@outlook.com删除。
免责声明:正软商城发布此文仅为传递信息,不代表正软商城认同其观点或证实其描述。

热门关注