进行交叉编译时出错:不支持的GOOS/GOARCH对linux/amd64

Bol*_*ski 2 cross-compiling go

我正试图在windows上交叉编译go代码,针对linux机器.我用简单的go代码来确定目标操作系统/平台,

package main

import "fmt"
import "runtime"

func main() {
        fmt.Printf("OS: %s\nArchitecture: %s\n", runtime.GOOS, runtime.GOARCH)
}
Run Code Online (Sandbox Code Playgroud)

运行上面的代码给了我

OS: linux
Architecture: amd64
Run Code Online (Sandbox Code Playgroud)

当我尝试在Windows上交叉编译时(使用JetBrain的Goland IDE)

> go version
go version go1.9.2 windows/amd64
Run Code Online (Sandbox Code Playgroud)

使用GOOS=linux ;GOARCH=amd64环境标志,我得到以下错误

cmd/go: unsupported GOOS/GOARCH pair linux /amd64
Run Code Online (Sandbox Code Playgroud)

我是golang的新手,所以我可能会遗漏一些简单的东西,但这个错误让我陷入困境.任何帮助赞赏...

hob*_*bbs 11

看起来你的GOOS设置为"linux",而不是"linux".

  • 就是这样。谢谢@hobbs,多一双眼睛可以节省一天! (2认同)