开源gRPC 微服务系统 windows 编译问题及解决

gRPC是google开发的一个开源rpc微服务框架,易用跨平台,官方网站上对linux Mac 支持很好,给出了完善的编译解决方案,但是在windows上很难用特别是编译这部分,

本文汇总下windows编译遇到的问题及解决方案:

引用一个前人写的编译攻略,Windows+VS2017使用gRPC - 我来乔23 - 博客园 (cnblogs.com)

可能是版本较早对现有版本并不是很支持。文中大部分可用,只是crypoto 模块编译 yasm 部分对现有版本存在编译问题, 导致crypoto ssl 加密模块编译失败

问题原因:

yasm 最新的版本是2010年左右版本 ,版本较老,无法编译最新的asm汇编指令导致

p256-x86_64-asm.asm:1957: error: instruction expected after label 

问题报错。

解决方案

用nasm代替 yasm 下载最新的nasm代码安装,Index of /pub/nasm 

https://www.nasm.us/pub/nasm/releasebuilds/2.15rc12/win64/nasm-2.15rc12-installer-x64.exe

安装好之后,找到crypoto  模块的汇编编译目录  \.build\third_party\boringssl-with-bazel\crypto.dir 在工程目录搜索 nasm.props 文件

找到 <CompilerNasm> ...yasm.exe</CompilerNasm>

替换上面标签中的yasm为 安装好后的nasm.exe  替换为

<CompilerNasm> "nasm的安装目录/nasm.exe</CompilerNasm>

重新cmake 生成的VS工程,编译通过!

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值