当我go install
在 Ubuntu 14.04 上运行自定义包的命令时出现此错误:
go install: no install location for .go files listed on command line (GOBIN not set)
如何$GOBIN
在我的项目目录中设置相对目录[anyproject]/bin
?
答案1
在 go 中,有一个包含所有二进制文件的目录,而不是一个垃圾桶每个项目的目录。
假设你希望所有 go 二进制文件都位于 中$HOME/go/bin
。然后运行
mkdir $HOME/go/bin
GOBIN=$HOME/go/bin; export GOBIN
但是,如果 GOROOT 环境变量设置正确,则无需设置 GOBIN。因此,我建议使用https://golang.org/doc/install
另请参阅https://groups.google.com/forum/#!topic/golang-nuts/-mN8R_Fx-7MRuss Cox 表示:
如果设置了 GOBIN,二进制文件就会存放在这里。如果未设置 GOBIN,则二进制文件会存放在源代码所在树的根目录下名为“bin”的目录中。对于 $GOROOT 中的内容,这意味着
$GOROOT/bin
。对于 GOPATH 目录 DIR 中的内容,这意味着 DIR/bin。请注意,GOPATH 中可以有多个目录export GOPATH=/dir1:/dir2:/dir3
如果未设置 GOBIN,则来自 的二进制文件
/dir1/src
最终位于 中/dir1/bin
,来自 的二进制文件/dir2/src
最终位于 中/dir2/bin
,依此类推(并且来自 的二进制文件$GOROOT/src
最终位于 中$GOROOT/bin
)。