1. 给个结论先,官方给的git安装法安装不了,除非你有梯子;以下方案是非官方安装法。
2. 下载grpc
wget https://github.com/grpc/grpc/archive/refs/tags/v1.45.0.tar.gz
3. 安装依赖包
yum install -y build-essential autoconf libtool pkg-config
4. 下载安装protobuf
a. wget https://github.com/protocolbuffers/protobuf/archive/refs/tags/v3.20.0.tar.gz
b. 解压进入解压包, 安装protobuf
tar -xzvf protobuf-3.20.0.tar.gz
./autogen.sh
./configure
make && make install
4. 解压grpc安装包,进入解压目录
make
5. 大概率会报错
缺少cares openssl包
6. 报错解决方案
a. 下载cares(https://github.com/c-ares/c-ares/releases/download/cares-1_17_2/c-ares-1.17.2.tar.gz)版本,放至目录grpc/third_party/cares/cares目录下
可解决缺少第三方cares包的问题
b. cmake -DgRPC_INSTALL=ON -DgRPC_BUILD_TESTS=OFF -DgRPC_SSL_PROVIDER=OpenSSL .
可解决缺少openssl包的问题
c. 下载abseil-cpp(https://github.com/abseil/abseil-cpp/archive/refs/tags/20211102.0.tar.gz)包,放至grpc/third_party/abseil-cpp文件夹中可解决缺少abs相关函数的问题
d. 解决grpc无法找到protobuf的问题。
之前cmake -DgRPC_INSTALL=ON -DgRPC_BUILD_TESTS=OFF - DgRPC_SSL_PROVIDER=OpenSSL \
-DProtobuf_INCLUDE_DIR=/usr/include/protocols \
-DProtobuf_LIBRARY=/usr/local/lib/libprotobuf.so \
-DProtobuf_PROTOC_LIBRARY=/usr/local/lib/libprotoc.so \
-DProtobuf_PROTOC_EXECUTABLE=/usr/local/bin/protoc .
7. 安装
进入到grpc目录;make && make install
8. 引用
grpc 源码安装_写到天黑的小白的博客-CSDN博客_grpc源码安装
Quick start | C++ | gRPC