编译并安装应用程序
在最后一个主题中,您将学习一些新的 go
命令。虽然在频繁更改时,go run
命令是编译和运行程序的有用快捷方式,但它不会生成二进制可执行文件。
本主题介绍用于构建代码的两个附加命令
-
go build
命令编译软件包及其依赖项,但不会安装结果。 -
go install
命令编译并安装软件包。
-
从 hello 目录中的命令行运行
go build
命令,将代码编译为可执行文件。$ go build
-
从 hello 目录中的命令行运行新的
hello
可执行文件,以确认代码有效。请注意,您的结果可能因您在测试后是否更改了 greetings.go 代码而异。
-
在 Linux 或 Mac 上
$ ./hello map[Darrin:Great to see you, Darrin! Gladys:Hail, Gladys! Well met! Samantha:Hail, Samantha! Well met!]
-
在 Windows 上
$ hello.exe map[Darrin:Great to see you, Darrin! Gladys:Hail, Gladys! Well met! Samantha:Hail, Samantha! Well met!]
您已将应用程序编译为可执行文件,以便运行它。但要当前运行它,您的提示符需要位于可执行文件的目录中,或指定可执行文件的路径。
接下来,您将安装可执行文件,以便在不指定其路径的情况下运行它。
-
在 Linux 或 Mac 上
-
了解 Go 安装路径,其中
go
命令将安装当前软件包。您可以通过运行
go list
命令 来了解安装路径,如下例所示$ go list -f '{{.Target}}'
例如,该命令的输出可能是
/home/gopher/bin/hello
,这意味着二进制文件安装到 /home/gopher/bin。您将在下一步中需要此安装目录。 -
将 Go 安装目录添加到您的系统 shell 路径中。
这样,您将能够在不指定可执行文件所在位置的情况下运行程序的可执行文件。
-
在 Linux 或 Mac 上,运行以下命令
$ export PATH=$PATH:/path/to/your/install/directory
-
在 Windows 上,运行以下命令
$ set PATH=%PATH%;C:\path\to\your\install\directory
或者,如果您在 shell 路径中已有类似
$HOME/bin
的目录,并且您想将 Go 程序安装在那里,您可以使用go env
命令 设置GOBIN
变量来更改安装目标$ go env -w GOBIN=/path/to/your/bin
或
$ go env -w GOBIN=C:\path\to\your\bin
-
在 Linux 或 Mac 上,运行以下命令
-
更新 shell 路径后,运行
go install
命令来编译并安装软件包。$ go install
-
只需键入应用程序的名称即可运行它。为了让它变得有趣,请打开一个新的命令提示符,并在其他目录中运行
hello
可执行文件名。$ hello map[Darrin:Hail, Darrin! Well met! Gladys:Great to see you, Gladys! Samantha:Hail, Samantha! Well met!]
这就完成了本 Go 教程!