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
+21.2k Golang : How to read JPG(JPEG), GIF and PNG files ?
+16.5k Golang : Read data from config file and assign to variables
+12.2k Golang : Read from buffered reader until specific number of bytes
+10.7k Golang : Split strings into command line arguments
+28k Golang : JQuery AJAX post data to server and send data back to client example
+8.8k Golang : Check if user agent is a robot or crawler example
+28.1k Golang : Get time.Duration in year, month, week or day
+7.9k Golang : GMail API create and send draft with simple upload attachment example
+21.8k Golang : Randomly pick an item from a slice/array example
+7.8k Golang : Capture text return from exec function example