Golang : Fix cannot download, $GOPATH not set error
For anyone exploring Golang and trying to get new packages from ... let say Github. One of the most common error message encounter by new comers is probably the cannot download, $GOPATH not set error message when attempting to execute the go get
command.
For example :
go get github.com/go-sql-driver/mysql
will produce error message such as :
package github.com/go-sql-driver/mysql: cannot download, $GOPATH not set. For more details see: go help gopath
To fix this error message :
execute
go env
command to list out the all environment variables related to Go.if
GOPATH=""
then you need to create a workspace and setGOPATH
pointing to the workspace.It is recommended to create a new empty directory to place all the downloaded codes
mkdir ~/gopath
export GOPATH=$HOME/gopath
Verify
GOPATH
is set by executinggo env
command again.GOPATH
value should not be""
.try executing
go get
command again and it should not issue cannot download, $GOPATH NOT set error again.
At this stage it should be sufficient to get things moving again. However, you might want to save this into your bashrc file or equivalent so that GOPATH environment variable will persist even after reboot.
By Adam Ng
IF you gain some knowledge or the information here solved your programming problem. Please consider donating to the less fortunate or some charities that you like. Apart from donation, planting trees, volunteering or reducing your carbon footprint will be great too.
Advertisement
Tutorials
+6.4k Golang : Find the longest line of text example
+33.5k Golang : convert(cast) bytes to string
+12.5k Golang : Convert int(year) to time.Time type
+22.6k Golang : Gorilla mux routing example
+4.5k Fix Google Analytics Redundant Hostnames problem
+16.1k Golang : Test floating point numbers not-a-number and infinite example
+18.3k Golang : Implement getters and setters
+17.3k Golang : [json: cannot unmarshal object into Go value of type]
+18.4k Unmarshal/Load CSV record into struct in Go
+18.1k Golang : Aligning strings to right, left and center with fill example
+6k Golang : Test input string for unicode example