是的,Go 编译器支持通过环境变量来指定目标操作系统(OS)和架构(Arch)。这允许你为不同的平台交叉编译 Go 程序。你可以使用 GOOS
和 GOARCH
环境变量来指定目标系统。
例如,如果你想为 Linux 系统上的 ARM64 架构编译程序,你可以设置环境变量如下:
shGOOS=linux GOARCH=arm64 go build
这里是一些常见的 GOOS
和 GOARCH
的值:
-
GOOS:
darwin
- macOSlinux
- Linuxwindows
- Windowsfreebsd
- FreeBSDopenbsd
- OpenBSDnetbsd
- NetBSDdragonfly
- DragonFly BSDsolaris
- Solarisandroid
- Androidios
- iOS (需要使用 cgo)
-
GOARCH:
amd64
- x86-64386
- x86-32arm
- ARM 32位arm64
- ARM 64位 (也称为aarch64
)ppc64
- PowerPC 64位ppc64le
- PowerPC 64位 Little Endianmips
- MIPS 32位mipsle
- MIPS 32位 Little Endianmips64
- MIPS 64位mips64le
- MIPS 64位 Little Endians390x
- IBM Z 系列
你可以在编译命令前设置这些环境变量,或者在命令行中直接指定它们,如上面的例子所示。这使得 Go 成为一个非常强大的语言,适用于多种平台的软件开发。
标签:arch,GOOS,MIPS,GOARCH,32,go,64,os,环境变量 From: https://www.cnblogs.com/exmyth/p/18596187