Golang 交叉编译
各平台的GOOS和GOARCH参考
OS ARCH OS version
linux 386 / amd64 / arm >= Linux 2.6
darwin 386 / amd64 OS X (Snow Leopard + Lion)
freebsd 386 / amd64 >= FreeBSD 7
windows 386 / amd64 >= Windows 2000
$ cd /usr/local/go/src
$ sudo CGO_ENABLED=0 GOOS=linux GOARCH=amd64 ./make.bash
这里并不是重新编译Go,因为安装Go的时候,只是编译了本地系统需要的东西;而需要跨平台交叉编译,需要在Go中增加对其他平台的支持。所以,有 ./make.bash 这么一个过程。
执行结果类似如下:
sudo CGO_ENABLED=0 GOOS=linux GOARCH=amd64 ./make.bash
Password:
Building C bootstrap tool.
cmd/dist
Building compilers and Go bootstrap tool for host, darwin/amd64.
lib9
libbio
libmach
misc/pprof
cmd/addr2line
cmd/cov
cmd/nm
cmd/objdump
cmd/pack
cmd/prof
cmd/cc
……
pkg/text/template/parse
pkg/text/template
pkg/go/doc
pkg/go/build
cmd/go
pkg/runtime (linux/amd64)
Building packages and commands for host, darwin/amd64.
runtime
errors
sync/atomic
unicode
unicode/utf8
math
sync
unicode/utf16
crypto/subtle
io
syscall
……….
net/rpc/jsonrpc
testing/iotest
testing/quick
Building packages and commands for linux/amd64.
runtime
errors
sync/atomic
unicode
unicode/utf8
math
sync
unicode/utf16
……..
testing
net/rpc/jsonrpc
testing/iotest
testing/quick
Installed Go for linux/amd64 in /usr/local/go
Installed commands in /usr/local/go/bin
三、编译对应平台下的执行文件
到源代码目录下执行:
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build sina.go
不带前面参数的 go build 只是编译出开发环境适用的执行文件。
原文来自:http://m.oschina.net/blog/131480
转载于:https://www.cnblogs.com/Jim-william/p/5038965.html
Golang 交叉编译相关推荐
- cgo linux arm,Golang交叉编译各个平台的二进制文件
熟悉golang的人都知道,golang交叉编译很简单的,只要设置几个环境变量就可以了 # mac上编译linux和windows二进制 CGO_ENABLED=0 GOOS=linux GOARCH ...
- Gin实践 番外 Golang交叉编译
Golang交叉编译 项目地址:https://github.com/EDDYCJY/go... (快上车,支持一波) 原文地址:https://segmentfault.com/a/11... 前言 ...
- golang 交叉编译总结
golang 交叉编译golang 交叉编译牵涉到三个变量CGO_ENABLED = 0 表示设置CGO工具不可用,使用go自己的编译器 GOOS:目标操作系统 GOARCH 表示程序构建环境的目标计 ...
- Golang交叉编译Sqlite3踩坑记录
Golang交叉编译Sqlite3踩坑记录 ,windows下编译golang go-sqlite3解决方案 众所周知Golang能够在一个平台编译不同平台可执行程序进行发布 然而在遇到需要内置处理程 ...
- 四,Golang 交叉编译
一.golang支持在一个平台下生成另一个平台可执行程序的交叉编译功能, 1.Mac下编译Linux,windows平台的64位可执行程序: CGO_ENABLE=0 GOOS=linux GOARC ...
- golang交叉编译工具,gox使用入门
gox入门教程 先说下交叉编译是什么? 交叉编译也就是你可以在linux上编译出可以在windows上运行的程序,在32位系统编译出64位系统运行的程序. gox就是方便你使用golang的交叉编译 ...
- go 编译 android arm,golang交叉编译
go env检查各项环境变量无误 进入shell环境(Windows为cmd环境),切换到项目工程的源码目录(包含main包的那个目录) 设置好环境变量,关闭CGO(交叉编译不支持所以要关闭),将编译 ...
- golang交叉编译
Windows 下编译 Mac 和 Linux 64位可执行程序 SET CGO_ENABLED=0 SET GOOS=darwin SET GOARCH=amd64 go build main.go ...
- Golang的交叉编译问题
参考:Golang交叉编译各个平台的二进制文件 - Go语言中文网 - Golang中文社区 (studygolang.com).也谈Go的可移植性 | Tony Bai 今天准备将一个在Mac上开发 ...
最新文章
- 再谈 Promise
- kafka 分区和副本以及kafaka 执行流程,以及消息的高可用
- AWS EC2 Root密码重置
- 在consumer中调用provider服务
- windows同时安装python2和3编码_Windows同时安装多个版本,python2和python3,window
- 7-6 区间覆盖 (10 分)(思路+详解)Come 宝!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
- hide show vue 动画_jQuery动画效果
- 信息学奥赛一本通(2038:【例5.5】最大数位置)
- gulp安装流程、使用方法及cmd常用命令导览
- 搭建nginx服务器
- 关于jesd204B调试总结
- PackageManager获取应用列表
- Iptable与firewalld防火墙
- 华硕ac66php服务器,华硕ASUS RT-AC66U无线路由器部署NTP Server最佳实践
- 酷睿i7 12700k核显相当于什么显卡 i712700k参数 i7 12700k什么水平
- 不同进制之间相互转换
- 快速提取Word文档中的所有图片
- 云服务器liunx系统怎么安装,云服务器怎么安装linux系统
- 悼念512汶川大地震遇难同胞——来生一起走(dfs+打表)
- 读《程序员修炼之道-从小工到专家》有感