Golang 交叉编译

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Golang 交叉编译相关的知识,希望对你有一定的参考价值。

Go 在ver>=1.5的版本中,实现交叉编译如此简单

交叉编译依赖下面几个环境变量:

$GOARCH    目标平台(编译后的目标平台)的处理器架构(386、amd64、arm)
$GOOS          目标平台(编译后的目标平台)的操作系统(darwin、freebsd、linux、windows)


各平台的GOOSGOARCH参考 

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

 

二 go源码

//test.go

package main

 

import "fmt"

 

func main() {

   fmt.Println("Hello, World!")

}

三 编译windows平台下的exe文件

ubuntu下交叉编译

# CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build test.go

# ls

test.exe  test.go

四 验证

//拷贝至windows下运行(SecureCRT)

C:\WINDOWS\system32>C:\test.exe

Hello, World!

 

Finally:

Golang,我又回来了,岁月如初,你可安好?

哈哈哈

 

以上是关于Golang 交叉编译的主要内容,如果未能解决你的问题,请参考以下文章

Golang 交叉编译

golang交叉编译

Golang交叉编译

Golang 交叉编译

Golang 交叉编译

Golang 如何交叉编译