Golang交叉编译(跨平台编译)简述

一、何为交叉编译

简单地说,就是在一个平台上生成另一个平台上的可执行代码。同一个体系结构可以运行不同的操作系统;同样,同一个操作系统也可以在不同的体系结构上运行。

二、交叉编译前的准备

本文只介绍Windows平台下的Golang交叉编译

安装TDM-GCC

下载地址:http://tdm-gcc.tdragon.net/download
安装完成后添加TDM-GCC中bin文件夹进环境变量。

三、简述交叉编译

Golang交叉编译
其实保存上面一幅图即可,需记住三个参数,GOOS(Go的目标系统),GOARCH(GO的目标架构)。
设置完成后通过go env查看当前配置。

注意:在不同的命令提示符(CMD)中或关闭重新打开命令提示符,所设置的GOOS和GOARCH是不互通的。也就是可以把GOOS和GOARCH理解为局部变量,不会保存。Golang默认每次build的都是当前系统和架构。

四、实练

1. 默认编译

Golang交叉编译
当前是使用默认配置编译了一个Windows平台下的exe可执行文件,同样我们设置GOOS和GOARCH后再编译看看。

2.交叉编译一个Arm+Linux

Golang交叉编译
在Windows PowerShell中SET 命令似乎无效,有时间再详查什么原因,所以这一步用了CMD。
设置完后同样再运行go bulid即可,就可以得到一个无后缀的linux可执行文件。
Golang交叉编译

小总结

记住3句代码,及其支持的系统。这个在第三节已经给出。

SET GOOS=xxx
SET GOARCH=xxx

go env

最近写东西比较乱,如有错误之处,敬请指出,感激不尽。
引用请注明:https://blog.csdn.net/hx7013/article/details/91489642

  • 4
    点赞
  • 16
    收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
©️2022 CSDN 皮肤主题:编程工作室 设计师:CSDN官方博客 返回首页
评论 1

打赏作者

x024

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值