• [Go] Windows/Linux/Mac交叉编译成指定系统的二进制可执行文件


    一般我们在windows获取mac开发代码 , 编译的时候如果要编译成指定系统的二进制文件 , 这时就需要使用交叉编译

    1. 在Windows下编译Mac, Linux
    编译成 Mac
    SET CGO_ENABLED=0
    SET GOOS=darwin
    SET GOARCH=amd64
    go build xxxx.go

    编译成 Linux
    SET CGO_ENABLED=0
    SET GOOS=linux
    SET GOARCH=amd64
    go build xxxx.go

    2.Mac下编译Linux, Windows

     编译成 Linux
    CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build xxxx.go
     编译成 Windows
    CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build xxxx.go

    3.Linux下编译Mac, Windows
    编译成 Mac
    CGO_ENABLED=0 GOOS=darwin GOARCH=amd64 go build xxxx.go
    编译成 Windows
    CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build xxxx.go

    设置了这个以后速度会慢 , 原因是标准库的包需要重新构建 

    CGO_ENABLED=0 

    GOOS:目标平台的操作系统(darwin、freebsd、linux、windows)
    GOARCH:目标平台的体系架构(386、amd64、arm)

    开源作品

    GO-FLY,一套可私有化部署的免费开源客服系统,安装过程不超过五分钟(超过你打我 !),基于Golang开发,二进制文件可直接使用无需搭开发环境,下载zip解压即可,仅依赖MySQL数据库,是一个开箱即用的网页在线客服系统,致力于帮助广大开发者/中小站长快速整合私有客服功能
    github地址:go-fly
    官网地址:https://gofly.sopans.com

    赞赏作者

    微信交流

  • 相关阅读:
    Java calendar类学习笔记
    Anaconda 学习笔记
    第八周作业
    第七次作业
    第六周作业
    第五次作业
    用户调研方法之焦点小组
    第三周作业
    软件工作量的评估方法有哪些
    软件质量保证与测试(--作业--)
  • 原文地址:https://www.cnblogs.com/taoshihan/p/14668286.html
Copyright © 2020-2023  润新知