针对grpc 和 curl的编译专门出了一篇文章,因为 它们同时依赖了 openssl…

这里的坑还挺大的…

20240924 指定3.3.2版本的openssl编译

【编译】openssl 3.3.2

 

curl的编译在这篇文档里面也有讲到:

20240924 指定8.4.0版本的curl编译

【编译】CMake, TCMalloc, jsoncpp, nghttp2, openssl, curl

 

这里grpc的编译看这篇文档就行了:

【grpc cpp】项目环境搭建 + Demo运行

 

那问题主要就出在openssl版本上。

curl 依赖的openssl版本默认是系统版本

grpc依赖的openssl版本默认是third_party的版本

所以解决他们之间依赖的办法:

  1. curl依赖grpc的openssl版本
  2. curl和grpc都使用系统版本

这里采用了方案2,那么需要修改grpc的编译命令:

grpc v1.36.4

设置 gRPC_SSL_PROVIDER=package 标识使用系统的openssl。

 

2023.09.28 tkxiong

前几天重新编译了 v1.58.1 版本的grpc。

上面的编译内容依旧适用,只需要修改对应的版本号即可。

 

2024.09.26 tkxiong

重新编译了 v1.65.5 版本的grpc,采用了挂代理连github的方式。

在使用ssl的时候,我们用openssl的静态库。

 

【编译】grpc curl 及其依赖库编译。
Tagged on:         
0 0 投票数
Article Rating
订阅评论
提醒

0 评论
最新
最旧 最多投票
内联反馈
查看所有评论