go - 如何从 Windows 交叉编译到 Linux?

标签 go cross-compiling

我在 Windows 机器上安装了 Go 1.2,编写了一个虚拟程序并将环境变量 GOARCHGOOS 分别设置为“AMD64”和“linux” .

当我发出“go build”命令时,我收到一个错误:

go build runtime: linux/amd64 must be bootstrapped using make.bat

这是什么意思?

最佳答案

它告诉你它需要在你使用它们之前构建所有工具。

如果你的 windows GOARCH 是 amd64,那么你可以通过运行这个小批量程序来“构建”所有需要的工具:

set GOARCH=amd64
set GOOS=linux
go tool dist install -v pkg/runtime
go install -v -a std

如果成功,那么您应该能够执行您所描述的操作(只使用 amd64,而不是 AMD64 - 它区分大小写)。

如果您的 windows GOARCH 是 386,那么您需要先构建您的 386 工具。您需要为此下载 mingw gcc。按照user2714852所说的去做。

这里 https://golang.org/wiki/WindowsCrossCompiling是类似的 linux 指令,也许你会觉得它们有帮助。

亚历克斯

关于go - 如何从 Windows 交叉编译到 Linux?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20829155/

相关文章:

json - 在 golang 中持久化嵌套结构

go - Gorm中不同表名的一对一关系

memory - 一旦被 bytes.Buffer 占用,就无法释放内存

http - 在 net.Conn 之上创建一个 http 响应编写器

c++ - 如何在应用程序中嵌入数据

python - 在 Windows 到 Linux/OSX 中用 Python 交叉编译

dll - 是否可以在平板电脑上运行我的 Windows 8 C/go/html 程序

go - 在多个goroutine之间共享的Golang结构中,非共享成员是否需要互斥保护?

将 pdcurses 从 arch linux 交叉编译到 windows

c# - 从 Windows 到 Linux 构建 C# 应用程序