Golang交叉编译(跨平台编译)的使用

 更新时间:2022年08月08日 08:40:03   作者:x024  
本文主要介绍了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=xxxSET GOARCH=xxxgo env

到此这篇关于Golang交叉编译(跨平台编译)的使用的文章就介绍到这了,更多相关Golang 交叉编译内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • go singleflight缓存雪崩源码分析与应用

    go singleflight缓存雪崩源码分析与应用

    这篇文章主要为大家介绍了go singleflight缓存雪崩源码分析与应用示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-09-09
  • go zero微服务实战性能优化极致秒杀

    go zero微服务实战性能优化极致秒杀

    这篇文章主要为大家介绍了go-zero微服务实战性能优化极致秒杀功能实现,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-07-07
  • 使用Go语言简单模拟Python的生成器

    使用Go语言简单模拟Python的生成器

    这篇文章主要介绍了使用Go语言简单模拟Python的生成器,Python的generator是非常酷的功能,用Go实现的代码也较为简洁,需要的朋友可以参考下
    2015-08-08
  • Golang 标准库 tips之waitgroup详解

    Golang 标准库 tips之waitgroup详解

    本篇文章给大家介绍Golang 标准库 tips之waitgroup的相关知识,包括使用 channel 实现 WaitGroup 的功能介绍,感兴趣的朋友跟随小编一起看看吧
    2021-07-07
  • go语言base64用法实例

    go语言base64用法实例

    这篇文章主要介绍了go语言base64用法,实例分析了Go语言base64编码的实用技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-02-02
  • golang 开启opencv图形化编程

    golang 开启opencv图形化编程

    这篇文章主要为大家介绍了golang 开启opencv图形化编程示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-10-10
  • Go语言中时间time相关处理方法详解

    Go语言中时间time相关处理方法详解

    在Go语言中,time 包是处理时间和日期的核心,它提供了丰富的函数和方法,用于显示、测量、计算、格式化、解析时间等,本文给大家详细介绍了Go时间time相关处理方法的相关资料,需要的朋友可以参考下
    2024-10-10
  • 图文详解Go程序如何编译并运行起来的

    图文详解Go程序如何编译并运行起来的

    Go语言这两年在语言排行榜上的上升势头非常猛,Go语言虽然是静态编译型语言,但是它却拥有脚本化的语法,下面这篇文章主要给大家介绍了关于Go程序如何编译并运行起来的相关资料,需要的朋友可以参考下
    2024-05-05
  • go项目打包部署的完整步骤

    go项目打包部署的完整步骤

    之前断断续续的接触到项目部署,一直没有详细的了解部署,于是最近就好好的专研一下项目的部署,下面这篇文章主要给大家介绍了关于go项目打包部署的相关资料,需要的朋友可以参考下
    2022-09-09
  • go解析svn log生成的xml格式的文件

    go解析svn log生成的xml格式的文件

    这篇文章主要介绍了go解析svn log生成的xml格式的文件的方法,非常的实用,有需要的小伙伴可以参考下。
    2015-04-04

最新评论