ProtoBuf使用指南(C++)

Created: Mar 12, 2019 6:47 PM
Last Edited Time: Mar 22, 2019 1:51 PM

1.安装部署

  1. 去官网(gitHub下载,现在用的版本是protobuf-all-3.7.0.zip)

  2. 去Cmake官网下载Cmake(cmake-3.14.0-rc4-win64-x64)

  3. 操作Cmake对Proto的源码进行处理

  4. Cmake第二步

  5. Cmake第三步:Configure成功后,返回Cmake首页选择确定要编译的相关组件(不知道具体每个组件的作用,图上打勾的必选,其余可选,不确定就全选)

  6. Cmake最后一步,点击Generate,生成成功则编译成功。(注:如果ProtoBuf是64位的或者想要在x64平台上编译,一定要选择x64,默认为32,不选会出错。)随后,在输出目录就会有编译完成的文件。

  7. 打开Cmake处理完成的文件,目录下有个.sln文件,用vs2017打开,对项目进行编译(也可以只编译libprotobufd/libprotocd/libprotobuf-lited等几个项目,我这里直接全部编译-F6),编译前注意是Debug方式,平台为X64。没有报错基本就是编译成功了。

  8. 打开编译OK的文件,进入Debug目录,目录下大致文件如下,这样基本就是成功了。(网上有人编译后的lib和protoc.exe不一样大,除了版本问题外还有可能编译过程有问题,自己把握)

    2:C++程序使用指南

    1. 写一个.proto文件,命名为msg.proto

    2. 新建一个C++空的项目,从build的protoBug文件的Debug目录下拷贝下面的文件到项目名目录下(如项目叫“Project”,目标目录是“Project/Project”),并且把msg.proto文件也拷贝到这个目录下

    3. 打开CMD,跳到msg.proto所在的文件目录下,执行下面的这个命令(addressbook.proto→msg.proto)

    4. 执行完成之后生成两个文件:msg.pb.h和msg.pb.cc,打开这两个文件,搜索下msg里面的字段,如果有has_clientid() 这类字样说明生成成功了。(鉴于我第一次就生成失败了,这一步检查还是很有必要的)

    5. 用VS打开刚刚的项目,右击添加项目:msg.pb.h和msg.pb.cc。

    6. 配置环境:

      1. 右击项目→属性→vc++目录→包含目录 添加protoBuf的src目录

      2. 属性→C/C++→预处理器定义添加_CRT_SECURE_NO_DEPRECATE和PROTOBUF_USE_DLLS

      3. C/C++→常规→SDL 设置SDL为否

      4. 链接器→附加库目录 添加项目目录(前提是各种lib文件已经复制到项目目录中)

      5. 链接器→输入→附加依赖项 添加lib文件名


        环境配置完毕

    7. 新建Client.cpp,编译,启动。

    8. 将项目文件整体复制出来,修改Client.cpp为Server.cpp编译,启动。

    9. 通讯完成

转载于:https://www.cnblogs.com/NewBee-CHH/p/10715701.html

ProtoBuf使用指南(C++)相关推荐

  1. ProtoBuf开发者指南

    转载:http://www.cnblogs.com/foxhengxing/archive/2010/08/10/1796165.html google ProtoBuf开发者指南 ProtoBuf开 ...

  2. Google Protobuf 开发指南

    为什么80%的码农都做不了架构师?>>>    Google Protobuf开发指南 1.简介 l  它是开源项目:http://code.google.com/p/protobu ...

  3. Protobuf 语法指南简析(proto3)

    Protobuf 语法指南简析(proto3) 前言 参考官方Language Guide (proto3)文档,主要是参考了官方文档. 本文介绍如何使用 protocol buffer 语法来构造 ...

  4. google ProtoBuf开发者指南

    目录 1   概览 1.1   什么是protocol buffer 1.2   他们如何工作 1.3   为什么不用XML? 1.4   听起来像是为我的解决方案,如何开始? 1.5   一点历史 ...

  5. Protobuf语言指南

    什么是 Protobuf Protobuf是Protocol Buffers的简称,它是Google公司开发的一种数据描述语言,用于描述一种轻便高效的结构化数据存储格式,并于2008年对外开源.Pro ...

  6. google ProtoBuf 开发者指南

    转自:http://blog.csdn.net/program_think/article/details/4229773 今天来介绍一下"Protocol Buffers"(以下 ...

  7. Go语言中使用protobuf开发者指南

    protobuf是什么? 官方给出的定义是:Protocol buffers are Google's language-neutral, platform-neutral, extensible m ...

  8. 【Protobuf速成指南】oneof类型的使用

    文章目录 2.3 oneof 类型 一.基本认识 二. 3.2 oneof相关函数 三.Contact2.3 改写 2.3 oneof 类型  本系列文章将通过对通讯录项目的不断完善,带大家由浅入深的 ...

  9. 【Protobuf速成指南】.proto文件的编写与编译

    文章目录 1.0版本 一.编写.proto文件 1.文件规范: 2.注释方式: 3.指定proto3语法: 4.package申明符 5.定义message 6.编写消息字段 ①类型对照表 ②唯一编号 ...

最新文章

  1. el-input怎么绑定回车事件
  2. 谷歌、微软2020年招新大幅萎缩:新冠流行打击科技巨头
  3. python入门:正则表达式,面向对象编程,零基础视频教程分享
  4. 如何检查linux是否安装了php
  5. Oracle中的Rowid
  6. java常用API之DateFormat
  7. windows 快捷键整理
  8. java如何实现动态时钟_java中的动态时钟
  9. c程序设计语言1-10答案,C语言程序设计试卷及答案_1(10页)-原创力文档
  10. 4.1 选择IDC机房 4.2 硬件服务器选型 4.3 上架服务器 4.4/4.5 装系统
  11. data-index在react里怎样表达_对牛弹琴,在英语里该怎样地道表达?
  12. 【背包问题】基于matlab遗传算法求解多背包问题【含Matlab源码 122期】
  13. python机器学习-糖尿病预测模型
  14. Dev C++使用简明教程
  15. windows 2012 nps认证cisco、h3c(comware5)交换机radius认证
  16. 台式计算机用什么电源线,台式电脑电源线接法图解(3分钟学会接电脑电源线)...
  17. 教你如何使用Excel中的INT函数
  18. gatk过滤_vcf文件过滤
  19. 移动端那些事儿(二)jquery手势插件之jGestures
  20. Android sim卡 pin码解锁流程.

热门文章

  1. java中的排序算法——归并排序
  2. jQuery Mobile 快速入门
  3. 物流设计大赛优秀作品_独家!亲历全国大学生物流设计大赛,队员、老师、专家这样说...
  4. ssh suse 配置_SUSE+linux+配置节点间的SSH信任关系
  5. mysql查询filter_子查询包含or引起的filter性能问题案例
  6. html复选框对齐文字,input【type=checkbox】标签与字体对齐
  7. php call_user_func和,php – call_user_func()和$var()之间有区别吗?
  8. wxpython 安装_下载和安装wxPython
  9. TinyMCE的使用
  10. mysql事务隔离级别与设置