goethereumgo-ethereumglide-golangtendermint

install go-ethereum dependencies and tendermint dependencies with glide


I'm using "glide" to manage my go packages, here is my glide.yaml:

package: github.com/my-project
import:
- package: github.com/ethereum/go-ethereum
  version: 1.8.14
  subpackages:
  - cmd/utils
  - common
  - common/hexutil
  - consensus/ethash
  - core
  - core/state
  - core/types
  - core/vm
  - eth
  - ethdb
  - event
  - log
  - node
  - p2p
  - params
  - rlp
  - rpc
- package: github.com/tendermint/tendermint
  version: 0.23.0
  subpackages:
  - abci/types
  - libs/log
  - rpc/lib/client
- package: gopkg.in/urfave/cli.v1
testImport:
- package: github.com/stretchr/testify
  subpackages:
  - assert
- package: github.com/tendermint/go-amino

when I run glide install, then some errors show up:

[INFO]  --> Fetching updates for github.com/mattn/go-colorable
[INFO]  --> Fetching updates for github.com/huin/goupnp
[INFO]  --> Fetching updates for github.com/jackpal/go-nat-pmp
[ERROR] Error scanning github.com/prometheus/prometheus/util/flock: 
cannot find package "." in:
    /root/.glide/cache/src/https-github.com-prometheus- prometheus/util/flock
[INFO]  --> Fetching updates for github.com/elastic/gosigar
[INFO]  --> Fetching updates for github.com/mohae/deepcopy
[INFO]  --> Fetching updates for github.com/influxdata/influxdb

...

[ERROR] Error scanning golang.org/x/sys/cpu: cannot find package "." in:
/root/.glide/cache/src/https-github.com-golang-sys/cpu
[INFO]  --> Fetching updates for github.com/matttproud/golang_protobuf_extensions
[INFO]  --> Setting version for github.com/matttproud/golang_protobuf_extensions to 3247c84500bff8d9fb6d579d800f20b3e091582c. 
[ERROR] Failed to retrieve a list of dependencies: Error resolving imports

so I try to change the glide mirror to my local file (I have cloned all the dependencies already), but it still not work, if someone know how to deal with it, please give me a hand, thanks


Solution

  • I figure it out, just set the mirror, and ignore some package, like this

    glide mirror set https://golang.org/x/mobile https://github.com/golang/mobile --vcs git
    glide mirror set https://golang.org/x/crypto https://github.com/golang/crypto --vcs git
    ....
    

    ignore

    - github.com/prometheus/prometheus/util/flock
    - golang.org/x/sys/cpu
    - golang.org/x/net/http2/hpack