Golang windows下 交叉编译
前言
在进行Go开发的时候,go env 可以设置Go的环境变量信息
GOOS 的默认值是我们当前的操作系统, 如果 windows,linux,注意 mac os 操作的上的值是darwin。
GOARCH 则表示 CPU 架构,如 386,amd64,arm 等。
CMD命令行中
在CMD命令行中编译(示例编译64位linux程序)
// 设置Linux编译环境
// 第一种
SET CGO_ENABLED=0
set GOARCH=amd64
set GOOS=linux
// 第二种
go env -w CGO_ENABLED=0 GOOS=linux
// 开始编译
go build -o ./build/ ./main.go
在windows10之前的系统版本上使用cmd命令行可以使用上述命令编译
在powershell命令行中
在powershell命令行中编译(示例编译64位linux程序)
// 设置Linux编译环境
$env:CGO_ENABLED="0"
$env:GOOS="linux"
$env:GOARCH="amd64"
// 开始编译
go build ./build/ ./main.go
在powershell上,环境变量的设置方式与cmd命令行做出了修改,所以导致目前大部分博客中写的golang的交叉编译命令失效,所以使用windows10 + powershell的用户将设置环境变量的方式修改成上文对应的即可
PS:环境变量参数参考:
GOARCH: amd64, 386, arm, ppc64, …
GOOS: linux, darwin, windows, netbsd, …
环境常用切换
linux 64
SET CGO_ENABLED=0
SET GOOS=linux
SET GOARCH=amd64
windows
SET CGO_ENABLED=1
SET GOOS=windows
SET GOARCH=amd64
linux部署go项目
Golang windows下 交叉编译的更多相关文章
- Go交叉编译(Go语言Mac/Linux/Windows下交叉编译)
Go交叉编译(Go语言Mac/Linux/Windows下交叉编译) 2019/11/21 Chenxin 在很多时候,由于开发的方便,会有这样的场景出现,使用Mac开发或使用Windows开发,需要 ...
- Golang 在 Mac、Linux、Windows 下交叉编译
Golang 支持在一个平台下生成另一个平台可执行程序的交叉编译功能. Mac下编译Linux, Windows平台的64位可执行程序: CGO_ENABLED= GOOS=linux GOARCH= ...
- golang 在 Mac , Linux , Windows 下交叉编译详解
一. 前言 Golang 支持交叉编译, 在一个平台上生成然后再另外一个平台去执行. 而且编译的工具[build]这个工具是Golang 内置的,不需要你去下载第三方的包啥的,贼方便. 二. 交叉编译 ...
- Go语言Mac、Linux、Windows 下交叉编译
在很多时候,由于开发的方便,会有这样的场景出现,使用Mac开发或使用Windows开发,需要编译成Linux系统的执行文件,那么如何做到?Go语言提供了非常方便的命令行操作,即可实现. 1.Mac下编 ...
- Golang在windows下交叉编译linux程序
1.下载相关程序. Golang下载:http://www.golangtc.com/download Git下载:http://git-scm.com/download/ TDM-GCC下载:htt ...
- golang 在 windows 下编译出 linux 二进制可执行文件的软件套装合集 [go 1.7.3环境]
golang 很好用,不过要把工具链弄完整. 要不你会发现怎么不能编译跨平台的呀? 怎么写代码没提示啊? ... 这一整套弄下来并不容易. 所以精心准备了一套工具方便大家使用. 软件列表如图. 安装顺 ...
- Golang 在 Mac、Linux、Windows 下如何交叉编译(转)
原文地址:Golang 在 Mac.Linux.Windows 下如何交叉编译 Golang 支持交叉编译,在一个平台上生成另一个平台的可执行程序,最近使用了一下,非常好用,这里备忘一下. Mac 下 ...
- Golang 在 Mac、Linux、Windows 下如何交叉编译
转自 https://blog.csdn.net/panshiqu/article/details/53788067 Golang 支持交叉编译,在一个平台上生成另一个平台的可执行程序,最近使用了一下 ...
- 在 Mac、Linux、Windows 下Go交叉编译
Golang 支持交叉编译,在一个平台上生成另一个平台的可执行程序,最近使用了一下,非常好用,这里备忘一下. Mac 下编译 Linux 和 Windows 64位可执行程序 CGO_ENABLED= ...
- Windows下visual studio code搭建golang开发环境
Windows下visual studio code搭建golang开发环境 序幕 其实环境搭建没什么难的,但是遇到一些问题,主要是有些网站资源访问不了(如:golang.org),导致一些包无法安装 ...
随机推荐
- 11.10javaweb学习
- Redis 源码简洁剖析 14 - Redis 持久化
Redis 持久化方式 RDB 优势 劣势 AOF 优势 劣势 Redis < 7.0 参考链接 Redis 源码简洁剖析系列 Redis 持久化方式 主要参考 Redis 官方文档:Redis ...
- OpenMMLab AI实战营 第一课笔记
OpenMMLab AI实战营 第一课笔记 OpenMMLab AI实战营第一节课由子豪兄讲解,课程主要内容主要围绕计算机视觉和OpenMMLab开源算法体系以及机器学习和神经网络简介进行展开.这里要 ...
- Java工具类SignUtil
import javax.crypto.Mac; import javax.crypto.SecretKey; import javax.crypto.spec.SecretKeySpec; impo ...
- Graph DataBase介绍-图数据库
前言分析社会关系这类复杂图壮结构的海量数据,使用图形数据库(Graph DataBase)是最好的选择.– 作者:李祎 <程序员>介绍各种NoSQL 数据库的文章已经很多,不过大部分都是基 ...
- weixueyuan-Nginx日志管理与监控8
https://www.weixueyuan.net/nginx/log/ Nginx访问日志配置 Nginx 的访问日志主要记录用户客户端的请求信息(见下表).用户的每次请求都会记录在访问日志中,a ...
- w3cschool-Jenkins中文文档
https://www.w3cschool.cn/jenkins/ Jenkins中文文档 阅读(1173.5k)收藏赞(54)分享 手册简介 Jenkins是一个开源的持续集成的服务器,Jenki ...
- AI时代云动力:新一代弹性计算云主机开启智能计算新纪元!
随着信息技术的飞速发展,云计算在企业数字化转型中发挥着愈发重要的作用. 弹性计算作为云计算技术的重要组成部分,以灵活的资源分配.高可用性等优势,在数字化转型中扮演着举足轻重的角色. 为打造更加卓越的上 ...
- 镇海-APIO联合总结
镇海考试见此处:https://www.cnblogs.com/british-union/p/liankao.html 考的是湖南省队集训,除了第一天有点头昏导致体验很差之外体验非常好,剩下两次考试 ...
- Atcoder ABC383E Sum of Max Matching 题解 [ 绿 ] [ 最小瓶颈路 ] [ 并查集 ] [ Kruskal 重构树 ]
Sum of Max Matching:简单贪心,但我场上没切,唐完了. 思路 显然,对于最大边权最小问题,首先想到最小瓶颈路的 trick:按边的大小排序,对原图进行加边. 同时可以发现,这个匹配有 ...