它包括一个实现 protobuf 编码和解码的纯 C 库,以及一个基于原始 .protobuf 文件将 Protocol Buffer 文件转换为 C 描述符代码的代码生成器。之前是包含rpc实现的,后面单独拆分出来了,更将强调了 protobuf和rpc的单独性(虽然protobuf和rpc以及grpc一起使用,但protobuf可以像json、xml等序列化协议一样可以单独去使...
1. 首先编译Linux下的protobuffer库 这里我们主要是为了得到编译所生成的protoc执行文件,用于今后将protobuffer消息定义文件.proto生成c++文件。 编译Linux版的protobuffer库脚本如下: #!/bin/sh echo "here" cd $HOME/Linux/works/protobuff/protobuf-3.3.0 make clean echo "end" ./autogen.sh ./configure ...
2、安装和编译Protobuf、Protobuf-C库 SoC编译和使用Protobuf库有2种方式: 下载Protobuf、Protobuf-C源码,集成到SoC SDK包中,修改makefile文件和相关配置,每次编译SDK固件时,也会编译和生成Protobuf所需的库和文件。 在Ubuntu系统下载和编译Protobuf、Protobuf-C源码,将编译好的库和文件拷贝到SoC APP应用工程中,...
在github中有很多protobuf c版本的实现,不过个人感觉还是这个protobuf-c更直接。其github地址:https://github.com/protobuf-c/protobuf-c。 下面总结下protobuf-c 的编译和移植过程及遇到的问题: 首先版本要匹配,porotobuf-c 目前最新版本是1.30.需要依赖protobufcpp3,0以上的版本。以protobufcpp3.4为例。 在构...
protobuf-c 1.3.0 libprotoc 3.4.0 接下来再交叉编译: 1、打包下载protobuf-c,地址:https://github.com/protobuf-c/protobuf-c 2、解压后得到protobuf-c-master文件夹,进入该文件夹执行如下命令 3、./autogen.sh 4、CC=arm-linux-gnueabi-gcc CXX=g++ ./configure --host=arm-linux-gnueabi 5、make ...
接下来再交叉编译: 1、打包下载protobuf-c,地址:https://github.com/protobuf-c/protobuf-c 2、解压后得到protobuf-c-master文件夹,进入该文件夹执行如下命令 3、./autogen.sh 4、CC=arm-linux-gnueabi-gcc CXX=g++ ./configure --host=arm-linux-gnueabi ...
git clone https://github.com/google/protobuf.git #进入目录 cd protobuf #更新源 git submodule update --init --recursive #生成依赖项目 ./autogen.sh #配置 ./configure #编译 make #编译确认 make check #安装 sudo make install # refresh shared library cache(刷新共享库配置) ...
5.2.错误2:make编译错误 错误信息:stream_out/chromecast/cast_channel.pb.h:12:2: error: #error This file was generated by a newer version of protoc which is 解决方案:configure时增加选项–disable-chromecast,先关闭。网上有说法是PROTOBUF版本不一致导致,有评估该功能一般项目用不上,所以不花费精力去深究...
[CMakeFiles/half.dir/all] Interrupt CMakeFiles/Makefile2:109: recipe for target 'CMakeFiles/protobuf.dir/all' failed make[1]: *** [CMakeFiles/protobuf.dir/all] Interrupt CMakeFiles/Makefile2:294: recipe for target 'CMakeFiles/protoc_bin.dir/all' failed make[1]: *** [CMakeFiles...
桌面Linux发行版的交叉工具包。例如,基于 Debian 的发行版有用于交叉编译 ARM、MIPS 和 PowerPC 目标的软件包。 集成的嵌入式构建工具产生的二进制SDK。Yocto项目在http://downloads.yoctoproject.org/releases/yocto/yocto-[版本]/toolchain有一些例子。