在 c++ 项目中使用 grpc —— 无管理员权限
2022/2/17 11:45:41
本文主要是介绍在 c++ 项目中使用 grpc —— 无管理员权限,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
注1:参考代码取自 grpc 源码目录下的 examples\cpp\helloworld
注2:操作系统 CentOS 7.6
1. 安装 protoc 工具
- 下载 Grpc_v1.43.0_SetupFile.zip 文件,解压到任意目录
下载链接:https://pan.baidu.com/s/1HYjfQb8CQY56QF2iAGmBNw
提取码:grg0
注:Grpc_v1.43.0_SetupFile.zip 可由 grpc 源码编译安装得到,编译比较吃电脑配置,直接下载编译好的文件即可。 - 将解压后的 Grpc_v1.43.0_SetupFile/bin 中 的 protoc(文本文件,记录了版本信息)重命名为 protoc.version,然后将 protoc-3.18.1.0(可执行程序)拷贝一下并重命名为 protoc
注:原 protoc-3.18.1.0 文件也是需要用的,不能直接重命名。
2. 通过 protoc 生成 c++ 代码
- 任意目录下新建空文件夹 grpc_cpp_demo,在文件夹中创建 helloworld.proto 文件,示例如下:
View Code - 生成 Protobuf 消息 和 grpc 客户端和服务器
在 grpc_cpp_demo 目录下打开终端,执行如下命令:
export MY_INSTALL_DIR=/home/zgd123/Projects/Grpc_v1.43.0_SetupFile
export PATH="$MY_INSTALL_DIR/bin:$PATH" protoc --cpp_out=./ helloworld.proto
protoc --grpc_out=./ --plugin=protoc-gen-grpc=$MY_INSTALL_DIR/bin/grpc_cpp_plugin helloworld.proto
3. 编写客户端/服务器实现自定义业务逻辑
- 在 目录 grpc_cpp_demo 下,新建文件 greeter_server.cc 来编写服务器端相关代码,示例文件如下:
View Code - 在 目录 grpc_cpp_demo 下,新建文件 greeter_client.cc 来编写客户端相关代码,示例文件如下:
View Code
4. 通过 CMake 编译项目
- 在 目录 grpc_cpp_demo 下,新建文件 CMakeLists.txt 来编写 CMake 编译指令,示例文件如下:
View Code - 在目录 grpc_cpp_demo 下,打开终端,执行如下命令:
mkdir -p cmake/build pushd cmake/build cmake ../.. make -j popd
5. 运行项目
- 在目录 grpc_cpp_demo/cmake/build 打开 2 个终端,分别运行如下命令
./greeter_server
./greeter_client
- 终端输出如下:
Server listening on 0.0.0.0:50051
Greeter received: Hello world
这篇关于在 c++ 项目中使用 grpc —— 无管理员权限的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-05-15PingCAP 黄东旭参与 CCF 秀湖会议,共探开源教育未来
- 2024-05-13PingCAP 戴涛:构建面向未来的金融核心系统
- 2024-05-09flutter3.x_macos桌面os实战
- 2024-05-09Rust中的并发性:Sync 和 Send Traits
- 2024-05-08使用Ollama和OpenWebUI在CPU上玩转Meta Llama3-8B
- 2024-05-08完工标准(DoD)与验收条件(AC)究竟有什么不同?
- 2024-05-084万 star 的 NocoDB 在 sealos 上一键起,轻松把数据库编程智能表格
- 2024-05-08Mac 版Stable Diffusion WebUI的安装
- 2024-05-08解锁CodeGeeX智能问答中3项独有的隐藏技能
- 2024-05-08RAG算法优化+新增代码仓库支持,CodeGeeX的@repo功能效果提升