I've installed Go on my Linux machine in /usr/local/go
, and intended to use /usr/local/go/src
for development. However when I try this I get the following error:
$GOPATH must not be set to $GOROOT
Effectively as I understand it, this means you shouldn't use /usr/local/go
for development. Why not?
Best Answer
Because
/usr/local/go/src
already contains the code for the standard library, and you should keep your own code separate from that.I know, other development tools would have no problem with that, but Go is a little more strict in some ways. It's probably the same philosophy that lies behind flagging unused variables or imports as errors - avoiding problems which may seem small at first, but can lead to bigger headaches in the future.