zoukankan      html  css  js  c++  java
  • golang

    root@ubuntu:~/kata# go get -d -u github.com/kata-containers/runtime
    
    Command 'go' not found, but can be installed with:
    
    snap install go         # version 1.15.2, or
    apt  install golang-go
    apt  install gccgo-go 
    
    See 'snap info go' for additional versions.
    
    root@ubuntu:~/kata# apt  install golang-go
    Reading package lists... Done
    Building dependency tree       
    Reading state information... Done
    root@ubuntu:~/kata# go version
    go version go1.10.4 linux/arm64
    root@ubuntu:~/kata#
    root@ubuntu:~/kata# ls /usr/bin/go -al
    lrwxrwxrwx 1 root root 21 Feb 28  2018 /usr/bin/go -> ../lib/go-1.10/bin/go
    root@ubuntu:~/kata# whereis go
    go: /usr/bin/go /usr/lib/go /usr/share/go /usr/share/man/man1/go.1.gz
    root@ubuntu:~/kata# 

    apt-get install golang-go这样安装版本可能过低。
    go version查看版本为 1.6.2
    apt-get 卸载此版本重新安装

    重新安装

    export GOPATH=/opt/gopath
    export GOROOT=/usr/lib/go
    export GOARCH=386
    export GOOS=linux
    export GOTOOLS=$GOROOT/pkg/tool
    export PATH=$PATH:$GOROOT/bin:$GOPATH/bin
    
      1. 执行
        source /etc/profile
      1. 查看版本
        go version
        结果 go version go1.11 linux/amd64


     

     用git clone 代替go get 

    root@ubuntu:~/kata# go get -d -u github.com/kata-containers/runtime
    package github.com/kata-containers/runtime: no Go files in /root/go/src/github.com/kata-containers/runtime
    root@ubuntu:~/kata# 
    root@ubuntu:~/kata# git clone https://github.com/kata-containers/runtime.git

    consider the following goreleaser.yml
    
    # goreleaser.yml
    # Build customization
    build:
      goos:
        - windows
        - darwin
        - linux
      goarch:
        - amd64
        - arm
        - arm64
        - 386
    root@ubuntu:~/kata/runtime# go env
    cmd/go: unsupported GOOS/GOARCH pair linux/arch64
    arch64 改成arm64
    export GOPATH=/opt/gopath
    export GOROOT=/usr/lib/go
    export GOARCH=arm64   
    export GOOS=linux
    export GOTOOLS=$GOROOT/pkg/tool
    export PATH=$PATH:$GOROOT/bin:$GOPATH/bin
    root@ubuntu:~/kata/runtime# source ../go_source 
    root@ubuntu:~/kata/runtime# go env
    GOARCH="arm64"
    GOBIN=""
    GOCACHE="/root/.cache/go-build"
    GOEXE=""
    GOHOSTARCH="arm64"
    GOHOSTOS="linux"
    GOOS="linux"
    GOPATH="/opt/gopath"
    GORACE=""
    GOROOT="/usr/lib/go"
    GOTMPDIR=""
    GOTOOLDIR="/usr/lib/go/pkg/tool/linux_arm64"
    GCCGO="gccgo"
    CC="aarch64-linux-gnu-gcc"
    CXX="g++"
    CGO_ENABLED="1"
    CGO_CFLAGS="-g -O2"
    CGO_CPPFLAGS=""
    CGO_CXXFLAGS="-g -O2"
    CGO_FFLAGS="-g -O2"
    CGO_LDFLAGS="-g -O2"
    PKG_CONFIG="pkg-config"
    GOGCCFLAGS="-fPIC -pthread -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build751817124=/tmp/go-build -gno-record-gcc-switches"
    root@ubuntu:~/kata/runtime# 
    root@ubuntu:~/kata/runtime# make && sudo -E PATH=$PATH make install
    INFO: yq was not found, installing it
    golang.mk:60: *** "ERROR: golang minor version too old: got 1.10.4, need atleast 1.11".  Stop.
    root@ubuntu:~/kata/runtime# 

    https://studygolang.com/dl

    root@ubuntu:~/kata# apt-get purge golang-go
    tar -zxvf  go1.15.2.linux-arm64.tar.gz  -C /usr/lib
    root@ubuntu:~/kata# cat go_source 
    export GOPATH=/opt/gopath
    export GOROOT=/usr/lib/go
    export GOARCH=arm64
    export GOOS=linux
    export GOTOOLS=$GOROOT/pkg/tool
    export PATH=$PATH:$GOROOT/bin:$GOPATH/bin
    root@ubuntu:~/kata# source  go_source 
    root@ubuntu:~/kata# go -v
    flag provided but not defined: -v
    Go is a tool for managing Go source code.
         BUILD    /root/kata/runtime/kata-runtime
    kata-env.go:14:2: cannot find package "github.com/BurntSushi/toml" in any of:
            /usr/lib/go/src/github.com/BurntSushi/toml (from $GOROOT)
            /opt/gopath/src/github.com/BurntSushi/toml (from $GOPATH)
    utils.go:15:2: cannot find package "github.com/blang/semver" in any of:
            /usr/lib/go/src/github.com/blang/semver (from $GOROOT)
            /opt/gopath/src/github.com/blang/semver (from $GOPATH)
    update.go:15:2: cannot find package "github.com/docker/go-units" in any of:
            /usr/lib/go/src/github.com/docker/go-units (from $GOROOT)
            /opt/gopath/src/github.com/docker/go-units (from $GOPATH)
    factory.go:18:2: cannot find package "github.com/gogo/protobuf/types" in any of:
            /usr/lib/go/src/github.com/gogo/protobuf/types (from $GOROOT)
            /opt/gopath/src/github.com/gogo/protobuf/types (from $GOPATH)
    create.go:15:2: cannot find package "github.com/kata-containers/runtime/pkg/katautils" in any of:
            /usr/lib/go/src/github.com/kata-containers/runtime/pkg/katautils (from $GOROOT)
            /opt/gopath/src/github.com/kata-containers/runtime/pkg/katautils (from $GOPATH)
    main.go:21:2: cannot find package "github.com/kata-containers/runtime/pkg/signals" in any of:
            /usr/lib/go/src/github.com/kata-containers/runtime/pkg/signals (from $GOROOT)
            /opt/gopath/src/github.com/kata-containers/runtime/pkg/signals (from $GOPATH)
    factory.go:19:2: cannot find package "github.com/kata-containers/runtime/protocols/cache" in any of:
            /usr/lib/go/src/github.com/kata-containers/runtime/protocols/cache (from $GOROOT)
            /opt/gopath/src/github.com/kata-containers/runtime/protocols/cache (from $GOPATH)
    create.go:16:2: cannot find package "github.com/kata-containers/runtime/virtcontainers" in any of:
            /usr/lib/go/src/github.com/kata-containers/runtime/virtcontainers (from $GOROOT)
            /opt/gopath/src/github.com/kata-containers/runtime/virtcontainers (from $GOPATH)
    kata-env.go:17:2: cannot find package "github.com/kata-containers/runtime/virtcontainers/experimental" in any of:
            /usr/lib/go/src/github.com/kata-containers/runtime/virtcontainers/experimental (from $GOROOT)
            /opt/gopath/src/github.com/kata-containers/runtime/virtcontainers/experimental (from $GOPATH)
    factory.go:21:2: cannot find package "github.com/kata-containers/runtime/virtcontainers/factory" in any of:
            /usr/lib/go/src/github.com/kata-containers/runtime/virtcontainers/factory (from $GOROOT)
            /opt/gopath/src/github.com/kata-containers/runtime/virtcontainers/factory (from $GOPATH)
    delete.go:16:2: cannot find package "github.com/kata-containers/runtime/virtcontainers/pkg/annotations" in any of:
            /usr/lib/go/src/github.com/kata-containers/runtime/virtcontainers/pkg/annotations (from $GOROOT)
            /opt/gopath/src/github.com/kata-containers/runtime/virtcontainers/pkg/annotations (from $GOPATH)
    create.go:17:2: cannot find package "github.com/kata-containers/runtime/virtcontainers/pkg/compatoci" in any of:
            /usr/lib/go/src/github.com/kata-containers/runtime/virtcontainers/pkg/compatoci (from $GOROOT)
            /opt/gopath/src/github.com/kata-containers/runtime/virtcontainers/pkg/compatoci (from $GOPATH)
    create.go:18:2: cannot find package "github.com/kata-containers/runtime/virtcontainers/pkg/oci" in any of:
            /usr/lib/go/src/github.com/kata-containers/runtime/virtcontainers/pkg/oci (from $GOROOT)
            /opt/gopath/src/github.com/kata-containers/runtime/virtcontainers/pkg/oci (from $GOPATH)
    main.go:26:2: cannot find package "github.com/kata-containers/runtime/virtcontainers/pkg/rootless" in any of:
            /usr/lib/go/src/github.com/kata-containers/runtime/virtcontainers/pkg/rootless (from $GOROOT)
            /opt/gopath/src/github.com/kata-containers/runtime/virtcontainers/pkg/rootless (from $GOPATH)
    network.go:14:2: cannot find package "github.com/kata-containers/runtime/virtcontainers/pkg/types" in any of:
            /usr/lib/go/src/github.com/kata-containers/runtime/virtcontainers/pkg/types (from $GOROOT)
            /opt/gopath/src/github.com/kata-containers/runtime/virtcontainers/pkg/types (from $GOPATH)
    events.go:17:2: cannot find package "github.com/kata-containers/runtime/virtcontainers/types" in any of:
            /usr/lib/go/src/github.com/kata-containers/runtime/virtcontainers/types (from $GOROOT)
            /opt/gopath/src/github.com/kata-containers/runtime/virtcontainers/types (from $GOPATH)
    kata-env.go:19:2: cannot find package "github.com/kata-containers/runtime/virtcontainers/utils" in any of:
            /usr/lib/go/src/github.com/kata-containers/runtime/virtcontainers/utils (from $GOROOT)
            /opt/gopath/src/github.com/kata-containers/runtime/virtcontainers/utils (from $GOPATH)
    spec.go:16:2: cannot find package "github.com/opencontainers/runc/libcontainer/specconv" in any of:
            /usr/lib/go/src/github.com/opencontainers/runc/libcontainer/specconv (from $GOROOT)
            /opt/gopath/src/github.com/opencontainers/runc/libcontainer/specconv (from $GOPATH)
    oci.go:20:2: cannot find package "github.com/opencontainers/runc/libcontainer/utils" in any of:
            /usr/lib/go/src/github.com/opencontainers/runc/libcontainer/utils (from $GOROOT)
            /opt/gopath/src/github.com/opencontainers/runc/libcontainer/utils (from $GOPATH)
    exec.go:21:2: cannot find package "github.com/opencontainers/runtime-spec/specs-go" in any of:
            /usr/lib/go/src/github.com/opencontainers/runtime-spec/specs-go (from $GOROOT)
            /opt/gopath/src/github.com/opencontainers/runtime-spec/specs-go (from $GOPATH)
    main.go:28:2: cannot find package "github.com/opentracing/opentracing-go" in any of:
            /usr/lib/go/src/github.com/opentracing/opentracing-go (from $GOROOT)
            /opt/gopath/src/github.com/opentracing/opentracing-go (from $GOPATH)
    factory.go:23:2: cannot find package "github.com/pkg/errors" in any of:
            /usr/lib/go/src/github.com/pkg/errors (from $GOROOT)
            /opt/gopath/src/github.com/pkg/errors (from $GOPATH)
    delete.go:18:2: cannot find package "github.com/sirupsen/logrus" in any of:
            /usr/lib/go/src/github.com/sirupsen/logrus (from $GOROOT)
            /opt/gopath/src/github.com/sirupsen/logrus (from $GOPATH)
    create.go:19:2: cannot find package "github.com/urfave/cli" in any of:
            /usr/lib/go/src/github.com/urfave/cli (from $GOROOT)
            /opt/gopath/src/github.com/urfave/cli (from $GOPATH)
    console.go:16:2: cannot find package "golang.org/x/sys/unix" in any of:
            /usr/lib/go/src/golang.org/x/sys/unix (from $GOROOT)
            /opt/gopath/src/golang.org/x/sys/unix (from $GOPATH)
    factory.go:26:2: cannot find package "google.golang.org/grpc" in any of:
            /usr/lib/go/src/google.golang.org/grpc (from $GOROOT)
            /opt/gopath/src/google.golang.org/grpc (from $GOPATH)
    Makefile:568: recipe for target '/root/kata/runtime/kata-runtime' failed
    make: *** [/root/kata/runtime/kata-runtime] Error 1

    安装grpc

    factory.go:26:2: cannot find package "google.golang.org/grpc" in any of:
            /usr/lib/go/src/google.golang.org/grpc (from $GOROOT)
            /opt/gopath/src/google.golang.org/grpc (from $GOPATH)
    root@ubuntu:~/kata# mkdir go_package
    root@ubuntu:~/kata# cd go_package/
    root@ubuntu:~/kata/go_package# ls
    root@ubuntu:~/kata/go_package# git clone https://github.com/grpc/grpc-go  ./google.golang.org/grpc
    Cloning into './google.golang.org/grpc'...
    remote: Enumerating objects: 18, done.
    remote: Counting objects: 100% (18/18), done.
    remote: Compressing objects: 100% (17/17), done.
    remote: Total 22065 (delta 1), reused 6 (delta 0), pack-reused 22047
    Receiving objects: 100% (22065/22065), 11.72 MiB | 1.34 MiB/s, done.
    Resolving deltas: 100% (13601/13601), done.
    root@ubuntu:~/kata/go_package# 
    root@ubuntu:~/kata/go_package# ls
    google.golang.org
    root@ubuntu:~/kata/go_package# go install google.golang.org/grpc
    cannot find package "google.golang.org/grpc" in any of:
            /usr/lib/go/src/google.golang.org/grpc (from $GOROOT)
            /opt/gopath/src/google.golang.org/grpc (from $GOPATH)
    root@ubuntu:~/kata/go_package# ls
    google.golang.org
    root@ubuntu:~/kata/go_package# ls google.golang.org/
    grpc
    root@ubuntu:~/kata/go_package# ls
    google.golang.org
    root@ubuntu:~/kata/go_package# ls /opt/gopath/src/
    ls: cannot access '/opt/gopath/src/': No such file or directory
    root@ubuntu:~/kata/go_package# mkdir -p /opt/gopath/src/
    root@ubuntu:~/kata/go_package# ls
    google.golang.org
    root@ubuntu:~/kata/go_package# cp google.golang.org  /opt/gopath/src/ -r
    root@ubuntu:~/kata/go_package# 
    root@ubuntu:~/kata/go_package# cp google.golang.org  /opt/gopath/src/ -r
    root@ubuntu:~/kata/go_package# go install /opt/gopath/src/google.golang.org/grpc
    /opt/gopath/src/google.golang.org/grpc/credentials/credentials.go:31:2: cannot find package "github.com/golang/protobuf/proto" in any of:
            /usr/lib/go/src/github.com/golang/protobuf/proto (from $GOROOT)
            /opt/gopath/src/github.com/golang/protobuf/proto (from $GOPATH)
    /opt/gopath/src/google.golang.org/grpc/internal/binarylog/method_logger.go:28:2: cannot find package "github.com/golang/protobuf/ptypes" in any of:
            /usr/lib/go/src/github.com/golang/protobuf/ptypes (from $GOROOT)
            /opt/gopath/src/github.com/golang/protobuf/ptypes (from $GOPATH)
    /opt/gopath/src/google.golang.org/grpc/binarylog/grpc_binarylog_v1/binarylog.pb.go:9:2: cannot find package "github.com/golang/protobuf/ptypes/duration" in any of:
            /usr/lib/go/src/github.com/golang/protobuf/ptypes/duration (from $GOROOT)
            /opt/gopath/src/github.com/golang/protobuf/ptypes/duration (from $GOPATH)
    /opt/gopath/src/google.golang.org/grpc/binarylog/grpc_binarylog_v1/binarylog.pb.go:10:2: cannot find package "github.com/golang/protobuf/ptypes/timestamp" in any of:
            /usr/lib/go/src/github.com/golang/protobuf/ptypes/timestamp (from $GOROOT)
            /opt/gopath/src/github.com/golang/protobuf/ptypes/timestamp (from $GOPATH)
    /opt/gopath/src/google.golang.org/grpc/internal/transport/controlbuf.go:28:2: cannot find package "golang.org/x/net/http2" in any of:
            /usr/lib/go/src/golang.org/x/net/http2 (from $GOROOT)
            /opt/gopath/src/golang.org/x/net/http2 (from $GOPATH)
    /opt/gopath/src/google.golang.org/grpc/internal/transport/controlbuf.go:29:2: cannot find package "golang.org/x/net/http2/hpack" in any of:
            /usr/lib/go/src/golang.org/x/net/http2/hpack (from $GOROOT)
            /opt/gopath/src/golang.org/x/net/http2/hpack (from $GOPATH)
    /opt/gopath/src/google.golang.org/grpc/server.go:36:2: cannot find package "golang.org/x/net/trace" in any of:
            /usr/lib/go/src/golang.org/x/net/trace (from $GOROOT)
            /opt/gopath/src/golang.org/x/net/trace (from $GOPATH)
    /opt/gopath/src/google.golang.org/grpc/internal/channelz/types_linux.go:26:2: cannot find package "golang.org/x/sys/unix" in any of:
            /usr/lib/go/src/golang.org/x/sys/unix (from $GOROOT)
            /opt/gopath/src/golang.org/x/sys/unix (from $GOPATH)
    /opt/gopath/src/google.golang.org/grpc/status/status.go:34:2: cannot find package "google.golang.org/genproto/googleapis/rpc/status" in any of:
            /usr/lib/go/src/google.golang.org/genproto/googleapis/rpc/status (from $GOROOT)
            /opt/gopath/src/google.golang.org/genproto/googleapis/rpc/status (from $GOPATH)
    root@ubuntu:~/kata/go_package# 
     git clone https://github.com/golang/net.git  /opt/gopath/src/google.golang.org/x/net
     git clone https://github.com/golang/text.git /opt/gopath/src/google.golang.org/x/text
     git clone https://github.com/google/go-genproto.git /opt/gopath/src/google.golang.org/genproto

    下载依赖

    如何自动下载所有依赖包?
    大部分情况下大家下载 Go 项目都是使用go get命令,它除了会下载指定的项目代码,还会去下载这个项目所依赖的所有项目。
    
    但是有的时候我们的项目由于各种原因并不是通过go get下载的,是通过git clone下载的,这样代码下下来就没有依赖包了,没办法编译通过的。这样的话怎么办呢?
    
     go get -d -v ./...
     
    
    -d标志只下载代码包,不执行安装命令;
    -v打印详细日志和调试日志。这里加上这个标志会把每个下载的包都打印出来;
    ./...这个表示路径,代表当前目录下所有的文件。

     

    root@ubuntu:~/kata/runtime# ls
    arch                CODEOWNERS          data        Gopkg.toml  Makefile  protocols  VERSION
    cli                 containerd-shim-v2  golang.mk   hack        netmon    README.md  versions.yaml
    CODE_OF_CONDUCT.md  CONTRIBUTING.md     Gopkg.lock  LICENSE     pkg       vendor     virtcontainers
    root@ubuntu:~/kata/runtime# go get -d -v ./...
    github.com/BurntSushi/toml (download)
    github.com/blang/semver (download)
    github.com/docker/go-units (download)
    github.com/gogo/protobuf (download)
    root@ubuntu:~/kata/runtime# go get -d -v ./...
    github.com/BurntSushi/toml (download)
    github.com/blang/semver (download)
    github.com/docker/go-units (download)
    github.com/gogo/protobuf (download)
    github.com/kata-containers/runtime (download)
    github.com/opencontainers/runc (download)
    github.com/opencontainers/runtime-spec (download)
    github.com/opentracing/opentracing-go (download)

    gopath目录

  • 相关阅读:
    ssm利用ajax上传图片和参数
    ssm+rabbitmq 分布式实例
    ssh免密
    springboot中aop的尝试
    springboot中自定义属性实体类和应用
    滑动门--------实现导航栏背景图自适应文字内容多少
    嵌套块元素垂直外边距的合并(塌陷)
    vue项目处理时间戳问题
    vue项目中遇到的登录超时
    标签显示模式
  • 原文地址:https://www.cnblogs.com/dream397/p/13750556.html
Copyright © 2011-2022 走看看