CentOS安装gRPC

系统环境

cat /etc/redhat-release
CentOS Linux release 7.5.1804 (Core) 

安装

gRPC
go get -u google.golang.org/grpc
Protocol Buffers
  • 方法一
    1. 安装依赖

      yum install -y gcc-c++ autoconf libtool
      yum groupinstall -y "Development Tools"
      
    2. 安装Protocol Buffers v3

      wget https://github.com/google/protobuf/releases/download/v3.5.1/protobuf-all-3.5.1.zip
      unzip protobuf-all-3.5.1.zip
      cd protobuf-3.5.1/
      ./configure
      make
      make install
      

      检测是否安装成功

      protoc --version
      
  • 方法二(来自官方文档
    1. 下载平台对应预编译的二进制文件(protoc- < version > - < platform > .zip):https://github.com/google/protobuf/releases
    2. 解压文件
    3. 把二进制文件的路径加入环境变量PATH(或者直接丢到$GOPATH/bin
安装Protoc Plugin
   go get -u github.com/golang/protobuf/protoc-gen-go

遇到的问题

  1. 生成 .pb.go文件时报protoc-gen-go找不到,如下:

    protoc --go_out=plugins=grpc:. *.proto
    protoc-gen-go: program not found or is not executable
    --go_out: protoc-gen-go: Plugin failed with status code 1.
    

    原因是:protoc-gen-go需要位于shell路径中,即PATH环境变量中列出的目录之一,它与Go路径不同。您可以通过protoc-gen-go在命令行输入来测试这个:如果它显示“未找到命令”(或类似),那么它不在你的PATH

    解决方法:

    设置GOPATH/bin到环境变量

    export GOPATH=$HOME/gocode
    export PATH=$PATH:$GOPATH/bin
    
  2. 墙的问题导致包下载,通过GitHub替换

    git clone https://github.com/grpc/grpc-go.git $GOPATH/src/google.golang.org/grpc
    
    git clone https://github.com/golang/net.git $GOPATH/src/golang.org/x/net
    
    git clone https://github.com/golang/text.git $GOPATH/src/golang.org/x/text
    
    git clone https://github.com/golang/sys.git $GOPATH/src/golang.org/x/sys
    
    go get -u github.com/golang/protobuf/{proto,protoc-gen-go}
    
    git clone https://github.com/google/go-genproto.git $GOPATH/src/google.golang.org/genproto
    
    cd $GOPATH/src/
    
    go install google.golang.org/grpc
    

参考
https://www.36nu.com/question/132
https://blog.csdn.net/cyq6239075/article/details/83037585

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值