GRPC C++开发环境搭建

简介: GRPC C++开发环境搭建


1 安装必要的依赖工具

安装必要的依赖工具

sudo apt-get install autoconf automake libtool

如果cmake低于3.15, gcc/g++ 低于 7.0 ,请根据文档进行安装。查看版本的方式

# 检查cmake版本
cmake -version
# 检查gcc/g++版本
gcc -v
g++ -v

1.1 安装 cmake

1. 卸载已经安装的旧版的CMake

sudo apt-get autoremove cmake

2. 文件下载解压

wget https://cmake.org/files/v3.23/cmake-3.23.0-linux-x86_64.tar.gz
tar zxf cmake-3.23.0-linux-x86_64.tar.gz

3. 创建软链接

注: 文件路径是可以指定的, 一般选择在/opt/usr 路径下, 这里选择/opt

sudo mv cmake-3.23.0-linux-x86_64 /opt/cmake-3.23.0
sudo ln -sf /opt/cmake-3.23.0/bin/*  /usr/bin/

4. 测试版本

ubuntu@VM-16-11-ubuntu:~/rpc$ cmake -version
cmake version 3.23.0
CMake suite maintained and supported by Kitware (kitware.com/cmake).

1.2 安装gcc/gdb

升级gcc和gdb的版本,至少需要6.3以上的版本。

sudo apt-get install -y software-properties-common
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt update
sudo apt install g++-7 -y

建立软连接并检查

sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 60 \
                         --slave /usr/bin/g++ g++ /usr/bin/g++-7 
sudo update-alternatives --config gcc
gcc -v
g++ -v

2 编译grpc

下载源码

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

查看版本并选择合适的版本,这里选择v1.45.2相对较新的版本

git tag
git checkout v1.45.2

查看此时grpc目录内容的大小du -h --max-depth=1, 可以看到427M左右

ubuntu@VM-16-11-ubuntu:~/rpc/grpc$ du -h --max-depth=1
348M    ./.git
32K ./summerofcode
1.5M    ./doc
6.5M    ./tools
4.0K    ./spm-core-include
24M ./test
80K ./cmake
3.0M    ./third_party
4.0K    ./spm-cpp-include
1.5M    ./templates
8.0K    ./.bazelci
1.9M    ./include
5.0M    ./examples
34M ./src
268K    ./etc
64K ./.github
284K    ./bazel
427M    .

下载第三方依赖库,下载完后会发现整个grpc目录内容明显变大=

git submodule update --init

再次查看 目录大小,占用了1.3G

ubuntu@VM-16-11-ubuntu:~/rpc/grpc$ du -h --max-depth=1
899M    ./.git
32K ./summerofcode
1.5M    ./doc
6.5M    ./tools
4.0K    ./spm-core-include
24M ./test
80K ./cmake
291M    ./third_party
4.0K    ./spm-cpp-include
1.5M    ./templates
8.0K    ./.bazelci
1.9M    ./include
5.0M    ./examples
34M ./src
268K    ./etc
64K ./.github
284K    ./bazel
1.3G

编译和安装

mkdir -p cmake/build
cd cmake/build
cmake ../..
make
sudo make install

3 protobuf安装

不用手动安装protobuf,不然版本可能和grcp不匹配,必须在 grpc 执行 git submodule update --init 命令之后生成的 third_party/protobuf 里面编译安装对应的 protobuf。

cd third_party/protobuf/
./autogen.sh 
./configure --prefix=/usr/local
make
sudo make install
sudo ldconfig  # 使得新安装的动态库能被加载
protoc --version
显示3.19.4

4 测试环境

编译helloworld

cd grpc/examples/cpp/helloworld/
mkdir build
cd build/
cmake ..
make登录后复制

启动服务和客户端

# 启动服务端,监听在50051端口
./greeter_server
Server listening on 0.0.0.0:50051
# 启动客户端,服务端返回Hello world
./greeter_client 
Greeter received: Hello world

5 参考

ubuntu搭建grpc for C++开发环境wx5bb365de633ed的技术博客51CTO博客该文档提供修改grpc第三方库下载地址的方式进行安装。

目录
相关文章
|
6月前
|
IDE Java 开发工具
【C/C++】C/C++编程——C++ 开发环境搭建
【C/C++】C/C++编程——C++ 开发环境搭建
136 0
|
4天前
|
IDE 编译器 开发工具
C/C++开发环境
C/C++开发环境
13 4
|
6月前
|
前端开发 JavaScript 开发工具
Sublime Text 3配置C/C++开发环境
【4月更文挑战第15天】本篇 Huazie 介绍了 Sublime Text 3 配置 C/C++ 的相关内容,感兴趣的朋友赶紧配置起来,有任何问题可以随时评论区沟通。
544 1
Sublime Text 3配置C/C++开发环境
|
C++ iOS开发
02 C++ - 开发环境下载与安装(CLion)
02 C++ - 开发环境下载与安装(CLion)
170 0
|
6月前
|
编译器 C语言 C++
VSCode上搭建C/C++开发环境(vscode配置c/c++环境)Windows系统---保姆级教程
VSCode上搭建C/C++开发环境(vscode配置c/c++环境)Windows系统---保姆级教程
|
6月前
|
C语言 C++
c++开发环境搭建、visual studio安装
c++开发环境搭建、visual studio安装
|
6月前
|
Ubuntu Linux 编译器
Linux Ubuntu命令行快速配置C++开发环境
Linux Ubuntu命令行快速配置C++开发环境
131 1
|
6月前
|
Ubuntu Linux 开发工具
Linux操作系统Ubuntu 22.04配置Visual Studio Code与C++代码开发环境的方法
Linux操作系统Ubuntu 22.04配置Visual Studio Code与C++代码开发环境的方法
290 1
|
6月前
|
NoSQL 测试技术 API
|
6月前
|
JSON 前端开发 编译器
VsCode 配置 C/C++ 开发环境,真的很简单!!!
VsCode 配置 C/C++ 开发环境,真的很简单!!!
387 0