为什么要在src目录中安装二进制文件?

elv*_*o79 2 go

我在目录中有一个小的go程序:

~/gocode/src/github.com/elviejo79/goexample/
Run Code Online (Sandbox Code Playgroud)

当我执行

go install
Run Code Online (Sandbox Code Playgroud)

程序确实编译但它将可执行文件保存在与代码相同的目录中.

但根据如何编写Go代码,二进制文件实际上应保存在

~/gocode/bin
Run Code Online (Sandbox Code Playgroud)

这是我的$ GOPATH

$ echo $GOPATH
/home/agarcia/gocode
Run Code Online (Sandbox Code Playgroud)

zzz*_*zzz 5

无法重现这一点.请输入

 $ go env
Run Code Online (Sandbox Code Playgroud)

并验证GOBIN指向的位置.例如,在我现在的机器上,它说

09:01 myname@tux64:~$ go env
GOARCH="amd64"
GOBIN="/home/myname/bin"
GOCHAR="6"
GOEXE=""
GOGCCFLAGS="-g -O2 -fPIC -m64 -pthread"
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOOS="linux"
GOPATH="/home/myname"
GOROOT="/home/myname/go"
GOTOOLDIR="/home/myname/go/pkg/tool/linux_amd64"
CGO_ENABLED="1"
09:01 myname@tux64:~$ 
Run Code Online (Sandbox Code Playgroud)

go工具应该将二进制文件发送到$ GOBIN.它就是这样的.