protobuf(c++ windows)编译_window c protoc 编译_缘如风的博客-程序员信息网

技术标签: protobuf  protobuf编译  

(本文只是在windows平台上编译proto库,以c++为例)

1、下载对应的版本

网站 https://github.com/protocolbuffers/protobuf/releases/tag/v3.17.0-rc2 。 找到对应的版本

 

2、cmake编译

执行下载对应的程序。

打开cmake:选择protobuf下的cmake路径为源码路径

编译对应的项目即可,可以全部编译也可以编译libprotobuf ,libprotoc。

参考:https://blog.csdn.net/pengshengli/article/details/90378455?utm_medium=distribute.pc_relevant.none-task-blog-baidujs_title-4&spm=1001.2101.3001.4242

 

3、linux上的编译

参考 http://www.52im.net/thread-323-1-1.html


 

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/chyuanrufeng/article/details/116832627

智能推荐

Qt 4.8.6 PCL 1.8.0 VS 2010 联合编译常见错误_weixin_33708432的博客-程序员信息网

在Qt和PCL联合编译的过程中,会出现各种各样的错误,解决这些错误的过程真是痛苦万分,所以总结一些常见错误方便自己也方便他人。比如我们要编译PCL1.8.0中的apps中的point_cloud_editor这个应用时,可能会遇到如下错误:1>C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\...

Win7保护敏感的私人文件文件加密方法(不用软件)_johnny710vip的博客-程序员信息网

每个人的电脑里多少都会有些敏感的私人文件或者是重要的商业资料,一般都会用些技术手段将文件等保护起来不让别人看到,尤其是在电脑会被被他人使用的环境下,保护数据就更显重要。电脑上的常用保护手段无非就是加密,不过加密方法既可以很简单也可以很复杂。最简单的方法就是把文件夹设置为隐藏属性,不怎么懂电脑的人在这一招面前就基本被挡在门外;复杂一点的可以借助专业的加密软件甚至是硬件加密。Win7时代,微软

Netflix 增长的逻辑——第二曲线(混沌2018年度大课笔记1)_第一曲线和第二曲线_lylyly121的博客-程序员信息网

增长的逻辑:用不变的第一性原理,在第一曲线中找到破局点/失速点,跨越非连续性,将单一要素最大化,扩大到第二曲线中的全部,实现增长找到破局点,和极限点,极限点=失速点=第二曲线的撬动点分形学——单一要素最大化——10倍速变化——近乎垄断单一要素最大化:把第一曲线的一个点,扩大为第二曲线的全部Netflix发展史:<1988年斯坦福大学人工智能理科硕士毕业<1988年,在工作中发明检测内存...

虚拟机中Linux系统的屏幕分辨率调整简单方法_虚拟机安装linux分辨率怎么调_狗子猴子驴子的博客-程序员信息网

没有修改前: 是不是看着可别扭修改方法: 先输入指令 xrandr 查看分辨率选择 可以看到现在我们 分辨率是第一个 640x480 (“ * ”号的位置)输入指令 xrandr -s 1360x768 回车即可调整 我们可以再查看 现在变成了1360x768 ok!!!结束!! 希望给各位猿友带来帮助吧!!! 偷偷告诉你们!!!这是我刚写的日记!!

常见问题_请描述throw的使用位置,作用是什么?_逗逗super的博客-程序员信息网

【Object类、常用API】简述String类中的equals方法与Object类中的equals方法的不同点。String类中的equals方法是用来判断两个对象的内容是否相同,而Object 类中的equals方法是用来判断两个对象是否是同一个对象,所谓同一个对象指的是内存中的同一块存储空间。简述StringBuilder类与String类的区别Str...

spring BeanDefinition接口_originatingbeandefinition_一只小棉花的博客-程序员信息网

一、 BeanDefinition及其实现类BeanDefinition接口这个接口描述bean的结构,对应XML中的< bean >或者配置类中的@Bean 它继承了BeanMetadataElement和AttributeAccessor接口,如下图 【AttributeAccessor接口】类似于map,具有保存和访问name/value属性的能力。public...

随便推点

多媒体计算机技术应用,谈谈多媒体计算机技术在教学中的应用_kpbs的博客-程序员信息网

1.多媒体技术在教学中的应用情况1.1在教学中应用多媒体技术的必要性。现在的教学媒体种类很多,其性能和特点各异,在教学内容上的表现上都存在这样或那样的局限性,也就是说任何一种单一的媒体都不可能很好地面对整个教学过程。作为一个完整的课堂教学,往往是有多个基本教学活动组成,当一种媒体的传递不能满足要求时,其他媒体可以进行补充。因此,需要对性能各异的教学媒体进行优化组合,使其在教学过程中扬长避短,交互应...

PBRT_V2 总结记录 <8> Primitive 和 Intersection_aa20274270的博客-程序员信息网

Primitive 类class Primitive : public ReferenceCounted {public: // Primitive Interface Primitive() : primitiveId(nextprimitiveId++) { } virtual ~Primitive(); virtual BBox WorldBound() const = 0;...

c语言char数组指针,C中char数组与char指针的区别是什么?_big maomi的博客-程序员信息网

冉冉说C中char数组与char指针的区别是什么?C99 N 1256草稿字符串文字有两种不同的用法:初始化char[]:charc[]="abc";这是“更神奇的”,并在6.7.8/14“初始化”中作了描述:字符类型的数组可以由字符串文字初始化,也可以用大括号括起来。字符串文字的连续字符(包括如果有空间或数组大小未知时终止空字符)初始化数组的元素。所以这只是一条捷径:charc[]=...

PyCharm创建Django项目_0319AUG的博客-程序员信息网

PyCharm创建Django项目1.创建虚拟环境首先创建一个新文件夹在PyCharm终端中切换到这个文件夹,输入 python -m venv 环境名 创建虚拟环境此时文件夹下出现了名为DjangoPractice的文件夹2.激活虚拟环境在终端中输入 环境名\Scripts\activate 激活环境,要停止虚拟环境可以输入deactivate3.安装Django激活条件下输入 pip install django4.在Django下创建项目...

解决TIME_WAIT过多造成的问题_state time_wait_小师兄.的博客-程序员信息网

1、 time_wait的作用:TIME_WAIT状态存在的理由:1)可靠地实现TCP全双工连接的终止 在进行关闭连接四次挥手协议时,最后的ACK是由主动关闭端发出的,如果这个最终的ACK丢失,服务器将重发最终的FIN,因此客户端必须维护状态信息允许它重发最终的ACK。如果不维持这个状态信息,那么客户端将响应RST分节,服务器将此分节解释成一个错误(在java中会抛出conne...

推荐文章

热门文章

相关标签