Go语言交叉编译

Golang 支持交叉编译, 在一个平台上生成然后再另外一个平台去执行。
以下面代码为例
build
├── main.go
├── go.mod
在这里插入图片描述
main.go内容

package mainimport "fmt"func main() {fmt.Println("hello world")
}

windows系统上操作

1.cmd窗口编译

// 设置Linux编译环境
set CGO_ENABLED=0
set GOARCH=amd64
set GOOS=linux
go build main.go

修改的环境只在当前窗口生效,不影响整体环境

2.powershell窗口编译

// 设置Linux编译环境
$env:CGO_ENABLED="0"
$env:GOOS="linux"
$env:GOARCH="amd64"
go build main.go

修改的环境只在当前窗口生效,不影响整体环境

在cmd窗口和powershell窗口修改后,可以通过go env查看对应的变量已经更改。

Go交叉编译常用环境变量

  • Go支持交叉编译通过以下几个环境变量来实现,一般交叉编译时,使用命令行临时更改以下环境变量的方式实现。
  • CGO_ENABLE:是否支持C语言版本的GO编译器,如Go代码中调用了C代码,则交叉编译时必须指定为1,且还必须要指定CC变量。
  • GOOS:目标操作系统,支持的选项为darwin\linux\windows。
  • GOARCH:目标操作系统的架构,支持的常用选项为amd64\386\arm\arm64. 常用的GOOS和GOARCH对照表如下
GOOSGOARCH说明
darwinamd64Mac 64位系统
darwinarm64Mac 64位系统(ARM)
linuxamd64Linux 64位系统
linux386Linux 32位系统
linuxarm64Linux 64位系统(ARM)
linuxarmLinux 32位系统(ARM)
windowsamd64Windows 64位系统
windows386Windows 32位系统
windowsarm64Windows 64位系统(ARM)
windowsarmWindows 32位系统(ARM)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/22400.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

java新特性--03-1--Stream---Collectors工具类

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 1.stream 收集Collectors工具类注意区分 Collections工具类 练习1:查找工资大于6000的员工,结果返回为一个List练习2:查找年龄小…

【含项目亮点】小免鲜项目总结

【含项目亮点】小兔鲜项目总结 基础总结 vue3的优势 组合式API,更好的支持TS。速度提高,diff算法重写。按需引入,更好的treeshaking,体积小。数据式响应更优,使用js的proxy替代Object.defineProperty数据响应式系统,更灵活。 vue3使用的是vue-create脚手架工具,vue2使用…

【设计模式】结构型-组合模式

前言 在软件开发中,设计模式是一种被广泛应用的解决问题的方法论。其中,结构性设计模式是一类特别重要的模式,它们用于处理类或对象之间的组合关系,其中之一就是组合模式。组合模式允许客户端统一对待单个对象和对象的组合&#…

结构体(2),链表,共用体

链式数据结构 -- 链表 定义: struct Node { int data; //数据域 --存储要处理的数据 struct Node *next; //指针域,保存地址-- 指向下一个节点 }; //数据域指针域 //节点类型 struct Node n1; struct Node n2; struct Node n3; s1--&…

DeepSort整体流程梳理及匈牙利算法解析

文章目录 算法原理一、主要步骤二、算法流程:三、匈牙利算法:3.1 举例说明匈牙利匹配过程:3.2匈牙利算法中代价矩阵的计算(距离)卡尔曼滤波后面更新。 算法原理 DeepSort核心在于其对目标的外观特征和运动特征的联合使用,以及对目标匹配问题的优化处理。该算法通过融合目…

【前端技术】 ES6 介绍及常用语法说明

😄 19年之后由于某些原因断更了三年,23年重新扬帆起航,推出更多优质博文,希望大家多多支持~ 🌷 古之立大事者,不惟有超世之才,亦必有坚忍不拔之志 🎐 个人CSND主页——Mi…

使用wheelnav.js构建酷炫的动态导航菜单

目录 前言 一、WheelNav是什么 1、项目地址 2、关于开源协议 3、相关目录介绍 二、如何使用wheelnav.js 1、新建html页面 2、设置style样式 3、创建展示元素实现动态导航 三、参数即方法介绍 1、参数列表 2、运行方法 3、实际成果 四、总结 前言 用户体验永远是一…

玩转盲盒潮流:从0到1搭建小程序平台

玩转盲盒潮流并搭建一个从0到1的小程序平台来创作内容是一个充满挑战但有趣的过程。以下是一个步骤指南,帮助你实现这一目标: 1. 市场调研与定位 了解盲盒市场:研究当前盲盒市场的趋势、消费者喜好和成功案例。确定目标用户:明确…

android-jni2

详细的jni调用说明:Android学习--JNI_android jni-CSDN博客 jclass clazz;index;LOGE("开始:%d", "begin");clazz (*env).FindClass("com/changan/incalleventservice/input/NativeAction");//找到对应的java文件jfieldID instanc…

docker-compose 部署rabbitmq 15672打不开

docker-compose 部署rabbitmq 15672打不开 如果docker-compose的rabbitmq镜像后缀不是-management如:3.7.4-management,则需要进入容器中手动启动插件 部署rabbitmq后需要启动插件的命令: rabbitmq-plugins enable rabbitmq_management 一…

软件质量保障——三、四

三、黑盒测试 1.黑盒测试概述 1.1 如何理解黑盒测试? 1.2 黑盒测试有什么特点? 1.3 如何实施黑盒测试? 2. 黑盒测试用例设计和生成方法(这里还是要自己找题做) 2.1 等价类划分法 步骤: 1.选择划分准…

解释JDBC的作用和连接数据库的步骤

JDBC(Java Database Connectivity)是Java编程语言中用来执行SQL语句的API。它的主要作用是为Java程序提供连接各种关系型数据库的能力,使得Java开发者能够编写出与数据库进行交互的应用程序。JDBC的作用具体体现在以下几个方面: 数…

在多支付渠道中这个设计模式无敌好用!

假设我们有一个电商平台,需要支持多种支付方式。 通过策略模式来实现,管理不同的支付方式,并根据需求快速添加新的支付方式。 定义支付策略接口及其实现类: // 支付策略接口 public interface PaymentStrategy { void pay(int …

SASS基础知识

什么是SASS 1. SASS与CSS的关系 SASS(Syntactically Awesome Stylesheets)是一种强大的CSS扩展语言,它允许开发者使用变量、嵌套规则、混合宏和更多功能,这些在纯CSS中是不可能做到的。SASS旨在简化CSS代码的维护,并…

C语言练习1

前言 从0开始记录我的学习历程,我会尽我所能,写出最最大白话的文章,希望能够帮到你,谢谢。 提示:文章作者为初学者,有问题请评论指正,感谢。 题目 1: 已有定义:char a…

BI平台概述

随着数字化浪潮的推进,企业对于数据驱动决策的需求日益增长。纷享销客作为一款领先的CRM平台,一直致力于帮助企业实现销售管理的高效与智能。纷享销客一体化BI智能分析平台作为CRM平台中的重要一环,旨在为企业提供更加全面、深入的数据分析能…

【EBS】通过SQL查找所有的定时请求

--查找所有定时请求。 --也可以登录系统,在系统管理员下查找特定请求,状态设置为Scheduled进行查询 SELECT DISTINCT USER_CONCURRENT_PROGRAM_NAME, B.RESUBMIT_INTERVAL, B.RESUBMIT_INTERVAL_UNIT_CODE FROM FND_CONCURRENT_PROGRAMS_TL A, FND_…

HBuilderX编写APP一、获取token

一、新建项目 二、从onenet获取key.js 1、下载之后的压缩包,解压2、关键就是找到key.js 3、将这个key.js复制到刚才的目录下面去 4、这个key.js文件就是生成token的代码 5、只要调用createCommonToken(params)这个函数,就可以实现生成token了 其中onload…

Vue Router源码分析

摘要&#xff1a;最近项目中遇到了点Vue Router的问题&#xff0c;发现有些只是没理清楚&#xff0c;再次复习了下Vue Router的源码&#xff0c;记录下... Vue-Router的能力十分强大&#xff0c;它支持hash、history、abstract 3种路由方式&#xff0c;提供了<router-link&g…

Java多线程核心工具类

1.Thread类&#xff1a;代表一个线程。你可以通过继承Thread类或实现Runnable接口来创建线程。 2.Executor框架&#xff1a;java.util.concurrent.Executors和java.util.concurrent.Executor接口提供了一种创建和管理线程池的方法&#xff0c;可以减少在创建和销毁线程上的开销…