protobuf 的交叉编译使用(C++)】的更多相关文章

protobuf 交叉编译笔记 目标是使用 android ndk 的工具链编译出 android armeabi-v7a 可用的 protobuf 库. 交叉编译环境配置 windows 平台 下载 NDK x86_64 或者 NDK x86 并解压缩 下载 protobuf 源代码.这里以 protobuf 3.4.1 举例. 下载并安装最新的 cmake 3.10 x86_64 或者 cmake 3.10 x86. 以上,准备完成. 使用 cmake 生成 makefile 选择一个你喜欢…
前言 为了提高通信效率,可以采用 protobuf 替代 XML 和 Json 数据交互格式,protobuf 相对来说数据量小,在进程间通信或者设备之间通信能够提高通信速率.下面介绍 protobuf 在 ARM 平台上的使用. 简介 官方文档给出的定义和描述: protocol buffers 是一种语言无关.平台无关.可扩展的序列化结构数据的方法,它可用于(数据)通信协议.数据存储等. Protocol Buffers 是一种灵活,高效,自动化机制的结构数据序列化方法-可类比 XML,但是…
一. X86编译 1. 安装zeromq库 根据setup script安装: wget https://github.com/zeromq/libzmq/releases/download/v4.2.2/zeromq-4.2.2.tar.gz tar xvzf zeromq-.tar.gz cd zeromq- ./configure sudo make install sudo ldconfig ldconfig -p | grep zmq libzmq.so. (libc6,x86-) =…
版权声明:本文为博主(Jimchen)原创文章,未经博主允许不得转载. ttps://www.cnblogs.com/jimchen1218/p/11611975.html 前言: Tensorflow交叉编译的过程是一个心塞的过程,其中会出现各种各样的错误,个中滋味,只有经历过的人才能体会. 特意记录下所有碰到的问题,一来作为这段时间的一个小结,二来可以给他人提供些帮助. 先上一张图,主要是针对各软件包之间的版本对应性: 实测发现,当前Tensorflow版本为1.10.0,Bazel版本只能…
由于项目组现在用的rpc是基于google protobuf rpc协议实现的,所以花了点时间了解下protobuf rpc.rpc对于做分布式系统的人来说肯定不陌生,对于rpc不了解的童鞋可以自行google,这里只是做个简单的介绍.rpc的主要功能是让分布式系统的实现更为简单,为提供强大的远程调用而不损失本地调用语义的简洁性.为了实现这个目标,rpc框架需要提供一种透明调用机制让使用者不必显示区分本地调用还是远程调用.rpc架构涉及的组件如下: 客户方像调用本地方法一样去调用远程接口方法,R…
0环境 Linux主机OS:Ubuntu14.04 64位,运行在wmware workstation 10虚拟机 树莓派版本:raspberry pi 2 B型. 树莓派OS: Debian Jessie Raspbian Jessie 1树莓派的启动过程 树莓派1,2,3的启动过程大致相同,主要分为3个阶段:ROM上的GPU bootloader启动GPU,GPU启动CPU,CPU直接启动内核或通过u-boot启动内核. 由于树莓派涉及到GPU的东西不开源,移植u-boot到树莓派并不是真正…
闲扯: 实习了将近半年一直在做硬件以及底层的驱动,最近要找工作了发现了对linux普遍要求很高,而且工作岗位也非常多,所以最近一些时间在时不时地接触linux. 正文:(我一时兴起开始写博客,准备不充分,图片都没有保存) 首先就是上网查找一下现成的教程,下面的网址就是一个很好的教程 http://www.cnblogs.com/softhal/p/5699381.html 第一.二.三步我都是照做的 但是在第四步的时候对于我这种新手来说就出现了一些问题: 1.第一种方法,修改bashrc文件,总…
一.Protobuf 的优点 Protobuf 有如 XML,不过它更小.更快.也更简单.它以高效的二进制方式存储,比 XML 小 3 到 10 倍,快 20 到 100 倍.你可以定义自己的数据结构,然后使用代码生成器生成的代码来读写这个数据结构.你甚至可以在无需重新部署程序的情况下更新数据结构.只需使用 Protobuf 对数据结构进行一次描述,即可利用各种不同语言或从各种不同数据流中对你的结构化数据轻松读写. 有两项技术保证了采用 Protobuf 的程序能获得相对于 XML 极大的性能提…
交叉编译工具链是为了编译.链接.处理和调试跨平台体系结构的程序代码,在该环境下编译出嵌入式Linux系统所需要的操作系统.应用程序等,然后再上传到目标板上. 首 先要明确gcc 和arm-linux-gcc的区别,gcc是x86架构的C语言编译器,编译出来的程序在本地执行,而arm-linux-gcc是跨平台的C语言编译 器,编译出来的程序在目标班上执行,嵌入式开发应该使用交叉编译工具链,下面给出详细的 Linux 14.04lts 环境下搭建交叉编译环境arm-linux-gcc-4.5.1安…
之前的文章讲述了socket通信的一些基本知识,已经本人自定义的C#版本的socket.和java netty 库的二次封装,但是没有真正的发表测试用例. 本文只是为了讲解利用protobuf 进行C# 和 java的通信.以及完整的实例代码 java 代码 svn 地址,本人开发工具是NetBeans 8.0.2 使用 maven 项目编译 http://code.taobao.org/svn/flynetwork_csharp/trunk/BlogTest c# 代码 svn 地址 使用的是…