【问题标题】:How to compile a Go package on Windows?如何在 Windows 上编译 Go 包?
【发布时间】:2012-07-04 12:28:35
【问题描述】:

文档都是针对 Mac OS X 和 Linux 的,我想知道如何在 Windows 平台上编译一个 Go 包。在Windows上,我不知道如何编写make文件以及使用哪个工具来制作它。

Go开发工具的安装文件好像没有make或者go make的工具可以使用。

【问题讨论】:

  • 您必须为 Windows 获取它。试试MinGW
  • @Hassan 你的意思是我必须在 Windows 上构建一个类似的 GNU 环境?喜欢cygwin的功能让我可以使用make工具?
  • 是的。但是,如果您已经拥有 cygwin,则可以改用它。我相信 make 可用于 cygwin,但我还没有尝试过。我知道 MinGW 简单易用。不管怎样,一旦你安装了一些编译器和 make,你应该打开一个终端,cd 到 Go 的目录,然后输入“make”,它会编译(希望如此)。
  • @Hassan 我没有理由讨厌 GNU。
  • @Hassan:Go 不再需要 make 文件。查看 peterSO 的回答

标签: go window cross-compiling


【解决方案1】:

来自:Golang windows,完整的设置指南http://noypi-linux.blogspot.com/2014/07/golang-windows-complete-setup-guide.html

1) 下载 ZIP

http://golang.org/dl/获取最新代码

2) 提取 ZIP

将 zip 解压到示例 C:\local\dev\go

3) 创建一个gopath目录,

Gopath 是第三方存储的地方。例如,如果你愿意 执行“go get github.com/somelib”,这个库将存储在 去路。创建一个 c:\local\dev\gopath

4) 设置环境变量

打开系统属性->高级->环境变量

GOROOT=C:\local\dev\go
GOBIN=%GOROOT%\bin
GOPATH=c:\local\dev\gopath

5) 将你的 gobin 添加到 PATH

将 C:\local\dev\go\bin 附加到 PATH

6) 测试

6.1) 创建路径“C:\local\dev\gopath\src\myfirstproject”

6.2)创建main.go文件“C:\local\dev\gopath\src\myfirstproject\main.go”

package main

import "fmt"

func main() {
    fmt.Println("Hi foobar")
}

6.2) 您现在可以在任何地方构建项目,例如,

6.2.1) 打开 cmd.exe

6.2.2) cd c:\temp

6.2.3) 去构建我的第一个项目

6.2.4) 运行 myfirstproject.exe

7) 获取一些库

7.1) 你可以下载一些免费的 git、svn 和 hg for windows

7.2) 拥有它们后,您现在可以执行“go get -u github.com/somelib”

8) 获取 IDE

下载liteide

恭喜!

【讨论】:

  • 谢谢。我想为linux编译,在windows上。我可以这样做吗?似乎我找不到设置 GOOS 和 GOARCH 的方法。
【解决方案2】:

Go 中不再需要 Makefile,因此不需要 make 工具。你也不需要cygwin。

如果您的 Windows shell 中似乎没有有效的go 命令,请尝试关注installing Go for windows 上的官方文档

压缩存档

将 zip 文件解压缩到您选择的目录(我们建议 c:\Go)。

如果你选择了 c:\Go 以外的目录,你必须设置 GOROOT 环境变量到您选择的路径。

将 Go 根目录的 bin 子目录(例如 c:\Go\bin)添加到 到您的 PATH 环境变量。

MSI 安装程序(实验性)

打开 MSI 文件并按照提示安装 Go 工具。经过 默认情况下,安装程序将 Go 发行版放在 c:\Go 中。

安装程序应将 c:\Go\bin 目录放入您的 PATH 环境变量。您可能需要重新启动任何打开的命令提示符 使更改生效。

在Windows下设置环境变量

在 Windows 下,您可以通过 “系统”的“高级”选项卡上的“环境变量”按钮 控制面板。某些版本的 Windows 提供此控制面板 通过“系统”里面的“高级系统设置”选项 控制面板。

最后一部分很重要。您的 Windows PATH 环境变量需要有C:\Go\bin,这样您的路径中才会有go

【讨论】:

    【解决方案3】:

    在 Windows 上编译 Go 包就像在 Linux 或 Mac OS X 上编译 Go 包。使用 go build 命令。没有make文件。

    这里有一些说明。

    Getting Started

    How to Write Go Code

    Compile packages and dependencies

    【讨论】:

    • 在 github 上还有很多 go peojects 确实有 make 文件。通常发布页面会包含 windows 可执行文件,但没有关于如何在 windows 上编译的说明,仅在 mac/linux 上使用make
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2010-12-15
    • 1970-01-01
    • 2016-01-06
    • 2012-03-14
    • 2012-10-19
    • 2017-02-21
    • 2013-09-30
    相关资源
    最近更新 更多