如何为所有用户安装golang二进制文件

时间:2019-02-20 23:24:39

标签: go

从我阅读的所有Golang教程中,安装Go程序的方式是通过设置环境变量GOPATH=~/go或类似的东西,然后可以运行go get blah,Go将会下载程序,然后将二进制文件放入~/go/bin中。您还必须将~/go/bin添加到您的$PATH环境变量中,以便您可以运行程序。

您将如何为所有用户将Golang程序安装到一个公共位置,这样系统上的每个用户都无需添加PATH环境变量?

我看到的唯一方法是建立一个像/usr/local/go这样的目录,并在安装程序时将其设置为我的GOPATH,然后需要添加{{1} }放入系统范围的$ PATH中,以便所有用户都可以运行程序。那应该怎么做?

2 个答案:

答案 0 :(得分:0)

最干净的方法是使用符号链接,因此很明显该工具来自何处。

  

$ ls -al / usr / local / bin / brew

     

lrwxr-xr-x 1个用户管理员17 Nov 17 18:38 / usr / local / bin / brew->   / usr / local / Homebrew / bin / brew

因此要使像godocdown这样的工具对所有用户都是全局的:

  

ln -s "$GOPATH/bin/godocdown" /usr/local/bin/

答案 1 :(得分:0)

还有更多环境变量可控制go ...命令的工作方式。请参阅:https://golang.org/cmd/go/#hdr-Environment_variables。在这种情况下,您可以将GOBIN设置为所需的安装位置。例如:

GOBIN=/path/to/common/binaries go get blah

会将blah二进制文件放入/path/to/common/binaries中。请注意,您可能必须运行sudo