温馨提示×

Golang如何在Ubuntu上跨平台编译

小樊
40
2025-12-30 04:53:44
栏目: 编程语言

在 Ubuntu 上为其他平台编译 Golang 程序,您需要安装交叉编译工具链。以下是在 Ubuntu 上为不同平台编译 Golang 程序的步骤:

  1. 安装交叉编译工具链

对于 Windows:

sudo apt-get install mingw-w64

对于 macOS:

sudo apt-get install gccdarwin

对于 Linux(其他发行版):

sudo apt-get install gcc-multilib
  1. 设置环境变量

设置 GOOSGOARCH 环境变量以指定目标操作系统和架构。例如,要为 Windows 64位编译程序,请执行以下命令:

export GOOS=windows
export GOARCH=amd64

对于 macOS:

export GOOS=darwin
export GOARCH=amd64

对于 Linux(其他发行版):

export GOOS=linux
export GOARCH=amd64
  1. 编译程序

现在,使用 go build 命令编译程序。例如,如果您的源代码文件名为 main.go,则执行以下命令:

go build -o your_output_file_name

这将生成一个可执行文件,可以在指定的目标平台上运行。

  1. 清理环境变量

完成编译后,您可以取消设置环境变量,以便在当前 shell 会话中恢复默认值:

unset GOOS
unset GOARCH
  1. 将可执行文件传输到目标平台

将生成的可执行文件传输到目标平台,并确保它具有可执行权限。在目标平台上运行可执行文件,您应该能够看到预期的输出。

注意:在某些情况下,您可能还需要为目标平台设置其他环境变量,例如 CGO_ENABLED=0。这取决于您的程序是否依赖于 CGo。如果您的程序不使用 CGo,可以尝试设置此变量以避免潜在的构建问题。

0