我检查了Golang的文档,发现要生成 Arm64 二进制文件,我要做的就是在运行go build命令编译 Go 程序之前设置两个环境变量。 GOOS指的是操作系统,例如 Linux、Windows、BSD 等,而GOARCH指的是要在哪种架构上构建程序。 $ env GOOS=linux GOARCH=arm64 go build -o prepnode_arm64 构建程序后,我重新运行file...
安装交叉编译工具链 sudo apt-get install gcc-arm-linux-gnueabihf go version arm-linux-gnueabihf-gcc -v 编译脚本 (build.sh) #!/bin/bash # 设置交叉编译环境变量 export GOARCH=arm export GOARM=7export GOOS=linux export CGO_ENABLED=1# 启用CGO(如果不使用CGO可以不设置) # 指定交叉编译使用的C编...
如果想为树莓派编译软件,一个方法是直接在树莓派上编译,另外就是在 x86 平台上借助qemu-user-static来构建 armv7l 或者 aarch64 编译环境。使用qemu-user-static方法的好处是方便在 CI 里编译,毕竟大部分 CI 服务都是 x86 环境。另外一个好处是能够编译大型的耗内存的软件,树莓派的内存最大只有 8GB,某些软件,...
交叉编译过程中需要修改其中三个变量即可,分别为: GOOS: 可执行程序未来运行在哪个操作系统上? windows or linux? GOARCH:可执行程序所在设备的CPU架构。x86? arm? Powerpc? CGO_ENABLED:交叉编译,禁用CGO 现在通过三个例子说明前两个参数的配置。 2. 交叉编译 2.1 ???️??? 编译x86架构上的windows版本...
Go语言原生支持交叉编译,因此无需额外安装工具。要编译Linux ARM架构程序,我们只需要设置环境变量GOOS和GOARCH。 3.1 设置环境变量 在Windows命令提示符或者PowerShell中,运行以下命令: setGOOS=linuxsetGOARCH=arm 1. 2. 对于64位ARM架构,可以将GOARCH设置为arm64。如果你需要编译32位ARM,则简单地设置为arm。
Go 的交叉编译 我检查了 Golang 的文档,发现要生成 Arm64 二进制文件,我要做的就是在运行 go build 命令编译 Go 程序之前设置两个环境变量。 GOOS 指的是操作系统,例如 Linux、Windows、BSD 等,而 GOARCH 指的是要在哪种架构上构建程序。 复制
[1] 生成mac平台可执行文件 CGO_ENABLED=0 GOOS=darwin GOARCH=amd64 go build -o macTool ./app/api/main.go 生成linux平台可执行文件 CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -o linuxTool ./app/api/main.go 生成arm平台可执行文件 ...
Golang支持交叉编译,允许在一台机器上生成适用于不同平台的可执行程序。通过设置特定的环境变量,即可实现这一功能。以下是Golang交叉编译的环境变量对照表:GOOS | GOARCH | OS VERSION linux | 386 / amd64 / arm | ≥ Linux 2.6 darwin | 386 / amd64 | OS X (Snow Leopard + Lion)fre...
在mac上编译64位linux的命令编译命令 bash:GOOS=linux GOARCH=amd64 go build hello.go 上面这段代码直接在命令控制台里面运行就可以生成64位linux的可执行程序。参数解析 这里用到了两个变量:GOOS:目标操作系统 GOARCH:目标操作系统的架构 OSARCHOS version linux386 / amd64 / arm>= Linux 2.6 darwin386 ...
linux/mips64 linux/mips64le linux/mipsle linux/ppc64 linux/ppc64le linux/s390x nacl/386 nacl/amd64p32 nacl/arm netbsd/386 netbsd/amd64 netbsd/arm openbsd/386 openbsd/amd64 openbsd/arm plan9/386 plan9/amd64 plan9/arm solaris/amd64 ...