Go编译为可执行程序

Go语言编译

在项目根目录(main函数所在的目录)打开终端,运行下面的语句进行编译

go build .

注意后面有个 空格 和 . 符号

 交叉编译

在Windows x86环境开发,但需要将程序部署到 Linux ARM64环境下时

就需要使用Go的交叉编译功能

Go提供环境变量 ( 详见 http://go.dev/wiki/ )

     GOOS: GO操作系统(OS)用于设置目标编译的操作系统,如 windows  linux  darwin (MacOS)

     GOARCH:Go架构 (Architecture)用于设置CPU所示使用的指令集,如 amd64 (x86)  arm64

因此可以通过设置环境变量来选择编译的平台和指令集架构

例如:编译 Linux ARM64 程序 可以这样做

go env -w GOOS=linux
go env -w GOARCH=arm64
go build .

但这种方式有个缺点每次都得将Go环境的变量改回来,不然编译的程序将一直是指定的平台

推荐的做法是使用临时的变量设置

例如 Windows CMD 窗口可以这么做,首先得进入 CMD 不然 SET 无效

CMD

SET GOOS=linux
SET GOARCH=arm64
go build .

类 Unix 系统可以这样做 ( MacOS  Linux )

GOOS=windows GOARCH=amd64 go build .

 

posted @   海乐学习  阅读(25)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
历史上的今天:
2010-12-13 JavaScript 中设置或读取Cookie
2010-12-13 JavaScript 获取页面地址中的参数(Get值)
点击右上角即可分享
微信分享提示