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:WINDOWSsystem32>C: est.exe

Hello, World!

Finally:

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

哈哈哈

原文地址:https://www.cnblogs.com/woodzcl/p/7736580.html