2020-08-01-build-grpc-1.30.2-on-windows

layouttitlesubtitledateauthortags
post
Windows 环境编译 Grpc 1.30.2 小记
真烦
2020-08-01
cj
grpc protobuf windows

Windows 环境编译 Grpc 1.30.2 小记

项目里用的 grpc 还是 1.11.1,最近要给项目加功能,顺便更新一下 grpc,坑还是不少。。。

代码下载

码云真香!把 grpc 项目和 submodules 都导入到码云然后手动 git clone,真香!疯狂给码云打电话!

编译

参考 BUILDING.md,使用 cmake 生成 Visual Studio sln 的方式编译。

cmake 用的不多,还是用界面的方式吧,命令行不好控制参数。运行 cmake 3.16.1souce code 设置为 grpc 源码存放路径,编译目录就放在外面同级的 bulid 目录下,点击 Configure,工具集设置为 Visutal Studio 2017 x64

  1. 第一个坑来了

    go 找不到的错误,真烦,到 https://studygolang.com/dl 下载个 go1.14.6.windows-amd64.mse,安装之,安装完成后自动将 go.exe 的路径加到了 PATH 里,倒是省心。继续 Configure,不报错了,点击 Generate ,打开 build/grpc.sln,编译之,又是一堆错误。。。

  2. 第二个坑来了

    首先是 crypto 项目报 go: golang.org/x/crypto@v0.0.0-20200622213623-75b288015ac9: Get "https://proxy.golang.org/golang.org/x/crypto/@v/v0.0.0-20200622213623-75b288015ac9.mod": dial tcp 34.64.4.81:443: connectex: A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond. 错误,搜索了下后按照 这篇文章go 设置个代理 go env -w GOPROXY=https://goproxy.cn,direct,再次编译 crypto 项目成功。

  3. 第三个坑来了:

    再就是 grpcgrpc++, grpc++_alts 等几个项目的 openssl 路径有问题,报找不到 openssl/x509.h 的错误,把 c++ 库路径 改正就行了:自动生成的是 G:\dev_libs\google\captainwong-grpc-master\grpc\third_party\boringssl-with-bazel\src\include, 真实应该是 G:\dev_libs\google\captainwong-grpc-master\grpc\third_party\boringssl-with-bazel\include,多了一层 src

怎么有种坑越多越爽的感觉?一定是幻觉。。。

最后,生成一下 INSTALL项目,相当于 make install 了,cmake 自动设置了安装路径为 C:\program files\grpc,可以修改后重新 generate

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值