Make error on 'dep ensure' Go Dependency Management tool

SOLUTION

brew install dep before you run make get_tools && make get_vendor_deps && make install per these instructions

PROBLEM

Follow these instructions…

error
make get_tools && make get_vendor_deps && make install is erroring, I think its from this line:

get_vendor_deps:
	@rm -rf vendor/
	@echo "--> Running dep ensure"
	@dep ensure -v // #L71

Here’s what happened…

make get_tools && make get_vendor_deps && make install
cd tools && /Applications/Xcode.app/Contents/Developer/usr/bin/make get_tools
Installing dep
go get -v github.com/golang/dep/cmd/dep
github.com/golang/dep (download)
github.com/golang/dep/gps/paths
github.com/golang/dep/vendor/github.com/armon/go-radix
github.com/golang/dep/vendor/github.com/Masterminds/semver
github.com/golang/dep/vendor/github.com/golang/protobuf/proto
github.com/golang/dep/vendor/github.com/boltdb/bolt
github.com/golang/dep/vendor/github.com/pkg/errors
github.com/golang/dep/vendor/github.com/nightlyone/lockfile
github.com/golang/dep/vendor/github.com/sdboyer/constext
github.com/golang/dep/gps/pkgtree
github.com/golang/dep/vendor/github.com/Masterminds/vcs
github.com/golang/dep/vendor/golang.org/x/net/context
github.com/golang/dep/vendor/github.com/pelletier/go-toml
github.com/golang/dep/internal/fs
github.com/golang/dep/vendor/golang.org/x/sync/errgroup
github.com/golang/dep/vendor/gopkg.in/yaml.v2
github.com/golang/dep/vendor/github.com/jmank88/nuts
github.com/golang/dep/gps/internal/pb
github.com/golang/dep/gps
github.com/golang/dep/internal/feedback
github.com/golang/dep/gps/verify
github.com/golang/dep
github.com/golang/dep/internal/importers/base
github.com/golang/dep/internal/importers/glock
github.com/golang/dep/internal/importers/godep
github.com/golang/dep/internal/importers/govend
github.com/golang/dep/internal/importers/glide
github.com/golang/dep/internal/importers/vndr
github.com/golang/dep/internal/importers/gvt
github.com/golang/dep/internal/importers/govendor
github.com/golang/dep/internal/importers
github.com/golang/dep/cmd/dep
--> Running dep ensure
make: dep: No such file or directory
make: *** [get_vendor_deps] Error 1
➜  cosmos-sdk git:(c671181) gaiad version

Any ideas?

I think go is working fine because I did the HelloWorld example on golang.org and it worked fine.

I can’t run

gaia version
// command 'gaia' not found
gaiaicli version
// command 'giaicli' not found

maybe because Make failed.

However,
`$HOME/go/src/github.com/cosmos/cosmos-sdk/cmd/gaia/testnets’ and files are present, are those for gaia and gaiacli?

Ah I see dep is a Go Dependency maanagement tool:


I’ll try to install it…

brew install dep

While its making, I notice in the log at the start of the make says ‘Dep already installed’, so I find something about a DEP check here:


but I think that’s a different directory than what brew install dep is doing.

I look back to the first time I tried to Make, and it did not say 'Dep already installed. So I think brew install dep helped :slight_smile:

This says that make get_tools should install dep? Maybe that didn’t happen…and needs be fixed.

So maybe this line tries to download dep but is not succeeding?

Anyways, I solved this (for myself at least) as I was opening this Topic. Maybe I’ll open a Github Issue for it too.

go run main.go init --name thinkocapo and it worked :slight_smile:
go run main.go version works too
Now I see $GOPATH/bin has gaiad so will try that one for running full node.

It looks like $GOPATH/bin is not in your PATH which is why the make command fails for you.

1 Like

was dep inside of $GOPATH/bin/dep the entire time? I wonder if that’s where the Makefile was looking for dep, and maybe by installing brew install dep it was somehow work-around fixing it.

my $PATH from my .zshrc was

# GOLANG
export GOPATH=$HOME/go
export GOROOT=/usr/local/opt/go/libexec
export PATH=$PATH:/usr/local/opt/go/libexec/bin
export PATH=$PATH:/usr/local/Cellar/go/1.10.3
export GOBIN=$GOPATH/bin

so maybe I should add:
export PATH=$PATH:GOBIN to this? might have been missing. I think i was cross-reading too many go installation tutorials at once and confused some things.

1 Like

Yes that’s that’s where go install puts things.

1 Like