使用make在Linux上配置grpc环境
先决条件
$ [sudo] apt-get install build-essential autoconf libtool pkg-config
$ [sudo] apt-get install libgflags-dev libgtest-dev
$ [sudo] apt-get install clang libc++-dev
下载grpc及其他模块
拉取grpc 1.2.0
$ git clone -b v1.20.x https://github.com/grpc/grpc.git
$ gedit grpc/.gitmodules
打开.gitmodules,将需要用到的第三方包对应的url全部修改为gitee,不然会慢 ( https://gitee.com/help/articles/4261 gitee如何导入第三方仓库 )
$ git submodule update --init
安装protobuf
$ cd third_party/protobuf/
$ git submodule update --init --recursive #确保克隆子模块,更新第三方源码
$ sudo ./autogen.sh #生成配置脚本
$ sudo ./configure #生成Makefile文件
$ sudo make
$ sudo make install
$ sudo ldconfig #更新共享库缓存
$ which protoc #查看软件的安装位置
$ protoc --version #检查是否安装成功
构建grpc
$ cd ../.. #到达grpc根文件夹下
$ sudo make HAS_SYSTEM_PROTOBUF=false
$ sudo make install #编译安装,默认安装位置为/usr/local/
测试
利用rgpc中的自带程序测试:
$ cd examples/cpp/helloworld/
$ sudo make #如果此处出错,可能就是安装有问题了
$ sudo ./greeter_server #运行server,监听50051端口
#打开一个新的终端运行client
$ sudo ./greeter_client
#就可以看到返回结果:Greeter received: Hello world
参考
https://github.com/grpc/grpc/blob/v1.20.x/BUILDING.md 官方给的安装教程 http://wiki.ldmcbuaa.com/pages/viewpage.action?pageId=35783442 栾老师的安装流程