GRPC|Qt GRPC Windows+Linux使用-含史上最靠谱的Demo

目录
前言
1、Windows系统 VS2019工程,附带grpc库文件
2、Linux系统QtCreator工程,附带grpc库文件
2.1 Linux系统下环境的配置
2.2 Linux环境测试
前言 编译GRPC是一件非常辛苦的事情,本人在Windows系统VS2019环境下编译源码到demo正常运行用了一周时间,Linux系统下编译源码再到demo正常运行又是一周时间。编译grpc源码,大家已经再网上分享了很多帖子,其实都非常好,那么我就再没必要分享GRPC的编译了。
但是几乎搜遍了全网,都没找到一份可以100%跑起来的Demo,所以针对此空白地带,特写一篇博客,旨在分享可运行的Demo,让大家跳过源码的编译,直接上手使用GRPC.
windows系统下编译源码参考网站:
参考1:windows系统c++/VS2019编译gRPCGRPC|Qt GRPC Windows+Linux使用-含史上最靠谱的Demo
文章图片
https://blog.csdn.net/w13l14/article/details/118155498
参考2:windows平台下编译gRPC的坎坷之路和解决方法附上编译好的lib和头文件下载GRPC|Qt GRPC Windows+Linux使用-含史上最靠谱的Demo
文章图片
https://blog.csdn.net/liyangbinbin/article/details/100134465
参考3:Visual Studio环境编译和使用grpc框架参考链接:https://blog.csdn.net/weixin_28927079/article/details/97262243作者:melon-gagagRPC 是一个高性能、通用的开源RPC框架,其由 Google 主要面向移动应用开发并基于HTTP/2 协议标准而设计,基于 ProtoBuf(Protocol Buffers) 序列化协议开发,且支持java、C++、C#等众多开发语言。本文根据csdn博主“melon-gaga”的《gRPC源码编译和使用(windows+vs.https://blog.csdn.net/rammuschow/article/details/107866878
参考4:gRPC vs2019环境配置、项目安装gRPC 环境配置、项目安装环境准备1. perl2. Go3. CMake4. gRPC编译 gRPC环境Windows 10VIsual Studio 2019ActivePerl-5.32.0Go 1.16.6CMake 3.21.0gRPC 1.39.0准备1. perlperl 使用的是 ActivePerl 最新的 5.32.0 版,直接在根据官方教程安装。直接控制台复制命令行回车就好。powershell -Command "& $([scriptblock]https://blog.csdn.net/weixin_43655901/article/details/118995526
【GRPC|Qt GRPC Windows+Linux使用-含史上最靠谱的Demo】Linux系统下编译源码参考网站:
参考1:ubuntu20.04 编译安装 grpc-c++GRPC|Qt GRPC Windows+Linux使用-含史上最靠谱的Demo
文章图片
https://blog.csdn.net/Bart__/article/details/106992395
参考2:grpc的配置和使用c++版本GRPC|Qt GRPC Windows+Linux使用-含史上最靠谱的Demo
文章图片
https://blog.csdn.net/zhuiyunzhugang/article/details/113308108
Linux系统下编译问题太多,实在编译不下,将grpc和openssl分开来编译,所以我的库文件也又两份grpc库和openssl库。
1、Windows系统 VS2019工程,附带grpc库文件 CSDN 0积分下载:史上最靠谱的VS2019+Qt+GRPC+Demo-C++资源优势:1、完整的Hellodemo,支持debug、release运行2、附带完整的GRP更多下载资源、学习资料请访问CSDN下载频道.https://download.csdn.net/download/ManagerUser/85421677?spm=1003.2166.3001.6637.2
gitee下载地址:windows-grpc-Qt-VS2019GRPC|Qt GRPC Windows+Linux使用-含史上最靠谱的Demo
文章图片
https://gitee.com/lanzhou-lezhi_0/window-grpc-qt-vs2019
2、Linux系统QtCreator工程,附带grpc库文件 CSDN 0积分下载史上最靠谱Linux+QtCreator+GRPC+Demo-C++资源优势:1、完整的Hello实例。支持debug、release运行2、附带grpclinu更多下载资源、学习资料请访问CSDN下载频道.https://download.csdn.net/download/ManagerUser/85421750?spm=1003.2166.3001.6637.1gitee下载地址:grpc-Qt-Demo-QtCreatorGRPC|Qt GRPC Windows+Linux使用-含史上最靠谱的Demo
文章图片
https://gitee.com/lanzhou-lezhi_0/grpc-qt-demo-qt-creator
2.1 Linux系统下环境的配置
1、拷贝grpc-linux-sdk目录下grpc,openssl文件到/usr/local目录下(不能拷贝到其他目录下)。
2、配置环境变量

# vi /etc/profile

在文件最后面加入:
export PATH=/usr/local/grpc/bin:$PATH export GRPC_CONFIG_PATH=/usr/local/grpc/lib/pkgconfig export PKG_CONFIG_PATH=$GRPC_CONFIG_PATH:$PKG_CONFIG_PATH export OPENSSL_CONFIG_PATH=/usr/local/openssl/lib/pkgconfig export PKG_CONFIG_PATH=$OPENSSL_CONFIG_PATH:$PKG_CONFIG_PATH

保存, 生效
# source /etc/profile

去运行下QtCreator工程
2.2 Linux环境测试
输入命令查看依赖包关系:
caojj@ubuntu:~$ pkg-config --libsprotobuf grpc -L/usr/local/grpc/lib -lprotobuf -pthread -lgrpc -laddress_sorting -lre2 -lupb -lcares -lz -lgpr -L/usr/local/openssl/lib -lssl -lcrypto -labsl_raw_hash_set -labsl_hashtablez_sampler -labsl_hash -labsl_city -labsl_low_level_hash -labsl_random_distributions -labsl_random_seed_sequences -labsl_random_internal_pool_urbg -labsl_random_internal_randen -labsl_random_internal_randen_hwaes -labsl_random_internal_randen_hwaes_impl -labsl_random_internal_randen_slow -labsl_random_internal_platform -labsl_random_internal_seed_material -labsl_random_seed_gen_exception -labsl_statusor -labsl_status -labsl_cord -labsl_cordz_info -labsl_cord_internal -labsl_cordz_functions -labsl_exponential_biased -labsl_cordz_handle -labsl_bad_optional_access -labsl_str_format_internal -labsl_synchronization -labsl_graphcycles_internal -labsl_stacktrace -labsl_symbolize -labsl_debugging_internal -labsl_demangle_internal -labsl_malloc_internal -labsl_time -labsl_civil_time -labsl_strings -labsl_strings_internal -lrt -labsl_base -labsl_spinlock_wait -labsl_int128 -labsl_throw_delegate -labsl_time_zone -labsl_bad_variant_access -labsl_raw_logging_internal -labsl_log_severity caojj@ubuntu:~$

查看头文件依赖关系:
caojj@ubuntu:~$ pkg-config --cflags protobuf grpc -I/usr/local/grpc/include -I/usr/local/openssl/include -maes -msse4.1 -DNOMINMAX

至此,就证明Linux环境搭建完毕。可以启动Qtcreator工程去测试了。

    推荐阅读