乐趣区

gRPC-编译安装总结

环境:

  • ubuntu 16.04 / macOS Catalina

最近要搞 gRPC,以为现在新出的东西应该用起来挺方便的,但是按照官方的步骤安装过程中遇到了一些小问题,看了些博客才解决,于是记录一下。

编译安装

下载

在 github 下载 gRPC 项目,然后更新子模块:

git clone https://github.com/grpc/grpc.git

git submodule update --init

依赖

这部分比较慢,我一行命令下去,大半天团建回来还没下好 …… 反正等就行了,超时了就重连再来。

接下来安装必要的依赖:

sudo apt-get install pkg-config

sudo apt-get install autoconf automake libtool make g++ unzip

sudo apt-get install libgflags-dev libgtest-dev

sudo apt-get install clang libc++-dev

mac 可以通过 Homebrew 安装依赖:

brew install autoconf automake libtool

也可以直接 brew install protobuf grpc 安装,这里我已经下好了,就源码编译安装了。

protobuf

grpc 默认使用 protobuf 作为序列化传输,因为都是自家的嘛。我们先安装 protobuf,在 grpc/third_party/protobuf/ 下:

git submodule update --init --recursive #更新第三方源码
sudo ./autogen.sh   #生成配置脚本
sudo ./configure    #生成 Makefile 文件,默认路径为 /usr/local/
sudo make
sudo make install 
sudo ldconfig       #更新共享库缓存

然后 protoc --version 试一下是否成功安装。

grpc

grpc/ 目录下已经编写好了 makefile,直接执行:

make
make install # 默认安装在 /usr/local/ 目录。

Hello world

学习新的语言和框架总是从 hello world 开始的嘛!在 example/ 下有一些示例代码,我们用 C ++ 版本来测试一下。

cd examples/cpp/helloworld/
make
./greeter_server # 开启一个服务
# 在另一个 terminal
./greeter_client # 打印出调用的结果:Hello world

好了,现在你又掌握了一种 Hello world 的写法,接下来就需要花点时间去耐心学习一下.proto 的写法,和理解 rpc 的原理了。学好了这些,在求职和工作过程中就多了一件利器。

退出移动版