在Debian上交叉编译Golang程序,您需要设置GOOS和GOARCH环境变量以指定目标操作系统和架构。以下是一些常见的目标平台和相应的GOOS和GOARCH值:
GOOS=windows, GOARCH=amd64GOOS=darwin, GOARCH=amd64GOOS=linux, GOARCH=armGOOS=linux, GOARCH=arm64以下是一个示例,展示了如何在Debian上交叉编译一个名为hello.go的Golang程序,以生成适用于Windows 64位系统的可执行文件:
打开终端。
导航到包含hello.go文件的目录。
设置GOOS和GOARCH环境变量,并运行go build命令:
GOOS=windows GOARCH=amd64 go build -o hello.exe hello.go
这将生成一个名为hello.exe的可执行文件,适用于Windows 64位系统。
对于其他目标平台,只需更改GOOS和GOARCH的值即可。例如,要为Linux ARMv7平台生成可执行文件,请运行:
GOOS=linux GOARCH=arm go build -o hello_linux_arm hello.go
这将生成一个名为hello_linux_arm的可执行文件,适用于Linux ARMv7平台。
注意:在交叉编译时,某些依赖项可能需要针对目标平台进行编译。在这种情况下,您可能需要为目标平台安装相应的库和工具。