草庐IT

Protobuf3

全部标签

protobuf 的交叉编译使用(C++)

前言为了提高通信效率,可以采用protobuf替代XML和Json数据交互格式,protobuf相对来说数据量小,在进程间通信或者设备之间通信能够提高通信速率。下面介绍protobuf在ARM平台上的使用。简介官方文档给出的定义和描述:protocolbuffers是一种语言无关、平台无关、可扩展的序列化结构数据的方法,它可用于(数据)通信协议、数据存储等。ProtocolBuffers是一种灵活,高效,自动化机制的结构数据序列化方法-可类比XML,但是比XML更小(3~10倍)、更快(20~100倍)、更为简单。你可以定义数据的结构,然后使用特殊生成的源代码轻松的在各种数据流中使用各种语言进

Protobuf生成文件报错

Mac下protobuf生成文件报错问题解决办法,windows下就不会这么麻烦了,如果linux下出现类似报错信息按照下面的解决逻辑依然适用。1、由--go_out引发的报错1.报错信息:user@C02FP58GML7Hpbfile%protoc--go_out=././user.protoprotoc-gen-go:programnotfoundorisnotexecutablePleasespecifyaprogramusingabsolutepathormakesuretheprogramisavailableinyourPATHsystemvariable--go_out:prot

Protobuf生成文件报错

Mac下protobuf生成文件报错问题解决办法,windows下就不会这么麻烦了,如果linux下出现类似报错信息按照下面的解决逻辑依然适用。1、由--go_out引发的报错1.报错信息:user@C02FP58GML7Hpbfile%protoc--go_out=././user.protoprotoc-gen-go:programnotfoundorisnotexecutablePleasespecifyaprogramusingabsolutepathormakesuretheprogramisavailableinyourPATHsystemvariable--go_out:prot

protocol buffers(protobuf)安装教程

本文按照mac讲解protobuf的安装,windows上比较好安装按照mac的基本流程就可以安装成功,mac上的安装有的时候比较容易出现问题一、通过brew的方式安装(仅Mac)需要mac中存在brew,输入命令:brew--version查看是否存在brew,如不存在就进行安装,安装方法直接百度即可。1.安装protobuf命令:brewinstallprotobuf安装指定版本的protobuf命令:brewinstallprotobuf@3.72.查看是否安装成功命令:protoc--versionuser@C02FP58GML7Hbin%protoc--versionlibproto

protocol buffers(protobuf)安装教程

本文按照mac讲解protobuf的安装,windows上比较好安装按照mac的基本流程就可以安装成功,mac上的安装有的时候比较容易出现问题一、通过brew的方式安装(仅Mac)需要mac中存在brew,输入命令:brew--version查看是否存在brew,如不存在就进行安装,安装方法直接百度即可。1.安装protobuf命令:brewinstallprotobuf安装指定版本的protobuf命令:brewinstallprotobuf@3.72.查看是否安装成功命令:protoc--versionuser@C02FP58GML7Hbin%protoc--versionlibproto

Protobuf Options 自定义插件使用

ProtoOptions简介使用protobuf的options,我们可以添加我们自己的option,然后根据option生成代码添对proto中的参数进行处理,例如添加message的校验。extension能够对已经存在的消息进行扩展,这种扩展只是动态增加字段,而没有增加接口。例子:扩展protobuf的FieldOptionsmessageMyFileOptions{optionalboolok=1;}//扩展protobuf的MessageOptionsextendgoogle.protobuf.FileOptions{optionalMyFileOptionsmy_file_opti

Protobuf Options 自定义插件使用

ProtoOptions简介使用protobuf的options,我们可以添加我们自己的option,然后根据option生成代码添对proto中的参数进行处理,例如添加message的校验。extension能够对已经存在的消息进行扩展,这种扩展只是动态增加字段,而没有增加接口。例子:扩展protobuf的FieldOptionsmessageMyFileOptions{optionalboolok=1;}//扩展protobuf的MessageOptionsextendgoogle.protobuf.FileOptions{optionalMyFileOptionsmy_file_opti

一个 bug 竟然是 Protobuf 的 feature

大家好,我是了不起。最近我们在项目中,通过使用protobuf格式作为存储数据的一个载体。一个不小心就给自己埋了个大坑,还是过了好久才发现。protobuf简介protobuf全名叫Protocalbuffers.它是由Google研发的,一种可跨语言、可跨平台、可扩展的序列化数据的机制。类似于XML,但是它更小、更快、更简单。你只需要定义一次你希望的数据如何被结构化,然后你可以使用它的生成工具,生成包含一些序列化和反序列化等操作的源代码。可以轻松地从各种数据流和使用各种编程语言写入和读取结构化的数据。proto2版本支持在Java、Python、Objective-C和C++中生成代码。使用

一个 bug 竟然是 Protobuf 的 feature

大家好,我是了不起。最近我们在项目中,通过使用protobuf格式作为存储数据的一个载体。一个不小心就给自己埋了个大坑,还是过了好久才发现。protobuf简介protobuf全名叫Protocalbuffers.它是由Google研发的,一种可跨语言、可跨平台、可扩展的序列化数据的机制。类似于XML,但是它更小、更快、更简单。你只需要定义一次你希望的数据如何被结构化,然后你可以使用它的生成工具,生成包含一些序列化和反序列化等操作的源代码。可以轻松地从各种数据流和使用各种编程语言写入和读取结构化的数据。proto2版本支持在Java、Python、Objective-C和C++中生成代码。使用

ubuntu安装protobuf

1环境准备操作系统ubuntu22.04protobufprotobufv3.19.42apt安装apt安装,安装的版本无法进行指定。sudoaptupdatesudoaptinstalllibprotobuf-devprotobuf-compiler3编译安装(任意版本)下载protobuf对应版本。以protobuf-all-3.19.4.tar.gz为例。sudowgethttps://github.com/protocolbuffers/protobuf/releases/download/v3.19.4/protobuf-all-3.19.4.tar.gz解压protobuf-all