I can't seem to figure this out. I was using my windows pc to develop and deploy on to a linux machine just fine, when all of a sudden I can't get go to compile anything any more, not even a simple hello world program. It may have been after a windows update. Everything I do comes back with this sort of error:
F:\OneDrive\Projects\gows\src\zonemaster>go install
can't load package: package zonemaster: cannot find package "zonemaster" in
any of:
C:\Go\src\zonemaster (from $GOROOT)
F:\OneDrive\Projects\gows\src\zonemaster (from $GOPATH)
The GOROOT and GOPATH are set correctly, as they always have been, but it can't find any packages. This fails on every single package I have. The above program is part of package "main"
I've updated Go to 1.10.1 and set and rechecked all the paths, but nothing works.
When I try to build it, it says this:
F:\OneDrive\Projects\gows\src\zonemaster>go build zonemaster.go
can't load package: package main: cannot find package "." in:
F:\OneDrive\Projects\gows\src\zonemaster
The first line of zonemaster.go
is package main (as with all of my non-compiling programs).
Here's my go env in case that helps:
set GOARCH=amd64
set GOBIN=
set GOCACHE=C:\Users\ameet\AppData\Local\go-build
set GOEXE=.exe
set GOHOSTARCH=amd64
set GOHOSTOS=windows
set GOOS=windows
set GOPATH=F:\OneDrive\Projects\gows
set GORACE=
set GOROOT=C:\Go
set GOTMPDIR=
set GOTOOLDIR=C:\Go\pkg\tool\windows_amd64
set GCCGO=gccgo
set CC=gcc
set CXX=g++
set CGO_ENABLED=1
set CGO_CFLAGS=-g -O2
set CGO_CPPFLAGS=
set CGO_CXXFLAGS=-g -O2
set CGO_FFLAGS=-g -O2
set CGO_LDFLAGS=-g -O2
set PKG_CONFIG=pkg-config
set GOGCCFLAGS=-m64 -mthreads -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=C:\Users\ameet\AppData\Local\Temp\go-
build874557962=/tmp/go-build -gno-record-gcc-switches
EDIT:
Even if I run a simple hello.go I have the same problem:
F:\OneDrive\Projects\gows\src\hello>cat hello.go
package main
import "fmt"
func main() {
fmt.Printf("hello, world
")
}
F:\OneDrive\Projects\gows\src\hello>go build hello.go
can't load package: package main: cannot find package "." in:
F:\OneDrive\Projects\gows\src\hello
SOLUTION:
It turns out a onedrive update was the problem. I copied my go workspace folder somewhere else as per Phrozens' suggestion, unticked "Files on Demand" in OneDrive settings, deleted the gows folder in my OneDrive folder, and copied it back in from the backup. Files now compile as normal inside my OneDrive folder again.