Golang项目编译到目标平台

109 阅读1分钟

前言

编译项目比较耗CPU和内存资源,如果设备的内存和CPU资源足够,可以将项目源码拷贝到目标设备,然后在目标设备执行编译。如果如果设备的内存和CPU资源不足,则可以在设备CPU和内存资源充足的计算机上完成编译。

编译项目可以在Windows下进行,也可以在Mac OSX下进行。

前置条件

编译项目所在的电脑安装好Golang环境(我们假定Golang版本在1.5版本以上)。 以下编译方法针对的特定CPU架构是arm7l,如果是其它架构,需要自行调整编译参数。

编译项目

Mac OSX下进行编译的步骤

  1. 使用vs code打开项目目录
  2. 打开vs code的终端
  3. 逐行设置环境变量
export GOOS=linux  
export GOARCH=arm  
export GOARM=7  
  1. 执行编译命令
go build

编译执行成功后,会生成目标平台可运行的可执行文件。

Windows下进行编译的步骤

  1. 使用Windows文件资源管理器打开项目目录
  2. 使用Windows命令行工具打开控制台(注意不是vs code的终端工具)
  3. 逐行设置环境变量
set GOOS=linux  
set GOARCH=arm  
set GOARM=7 
  1. 执行编译命令
go build

编译执行成功后,会生成目标平台可运行的可执行文件。

编译结果在目标平台运行验证

将前面编译完成的可执行文件拷贝到目标设备上后(假设可执行文件名为hello),在目标设备上打开命令行,执行:

chmod +x ./hello
./hello

如果执行结果与预期一致,则编译验证成功。