protobuf安装
Protocol Buffers - Google's data interchange format
一、简介
名字已经很好的说明它是什么,这里还是要简单的介绍一下,protobuf是protocol buffer的缩写,它是Google开源的一个数据传输格式工具,也就是序列化和反序列化工具。
二、安装
直接从上面的github库下载源码安装,README文件已经简单介绍了安装方式:
./autogen.sh # 生成configure脚本
$ ./configure
$ make
$ make check
$ make install
安装步骤很简洁,但是这里需要说的是,执行这些步骤时所依赖的东西,首先执行第一步时会自动下载gmock,它是用于单元测试的。由于GFW的存在,所以这一步不翻墙一般是执行不下去的。这里可以把下载好的gmock解压到该目录下即可。
同时,执行第一步时需要用到autoconf工具和libtool工具,centos安装命令分别是: yum install autoconf yum install libtool
之后就可以执行第一步的autogen.sh脚本了。

成功之后,开始执行第二步,设置编译参数,这里需要注意的是:

关于库安装的位置的配置,用参数: --prefix=/usr 来设置,如果不设置默认是安装在 /usr/local 目录下的,这里的安装位置关系到以后用到库时该怎么链接它,默认链接器是不会搜索 /usr/local/lib 目录的,所以如果你使用默认安装路径,那么就需要让链接器知道该目录(修改 /etc/ld.so.conf ),为避免设置,这里配置安装目录为 /usr .
./configure --prefix=/usr
配置完成后就是编译和安装了。
make && make install
三、使用
进入examples目录,这下面提供了两个例子程序:add_person、list_person
先编译出来一个cpp版本。
make cpp
得到两个程序:add_persion_cpp、list_people_cpp。

protobuf安装的更多相关文章
- google protobuf安装与使用
google protobuf是一个灵活的.高效的用于序列化数据的协议.相比较XML和JSON格式,protobuf更小.更快.更便捷.google protobuf是跨语言的,并且自带了一个编译器( ...
- protobuf安装流程
protobuf安装流程 环境 平台 Ubuntu16.04 依赖 autoconf automake libtool curl make g++ 安装流程 在Ubuntu / Debian上,您 ...
- go protobuf 安装
1.https://github.com/google/protobuf/releases/tag/v3.0.0 下载需要的版本,如果执行autogen.sh的过程中出现autoreconf not ...
- protobuf 安装 及 小测试
参考:http://shift-alt-ctrl.iteye.com/blog/2210885 版本: 2.5.0 百度云盘上有jar包. mac 上安装: 新建:/Users/zj/software ...
- Google protobuf安装
1:需要安装sudo apt-get install x11-apps libwayland-ltst-client0 libtxc-dxtn-s2tc0 x11-session-utils x11 ...
- protobuf 安装与卸载
方法一:可以FQ 安装 下载https://github.com/google/protobuf/releases ##Source code (zip)## ./autogen.sh ./confi ...
- python版protobuf 安装
转自:http://www.tuicool.com/articles/VfQfM3 1. 下载protobuf源代码(当前最新版本为:2.5.0) #cd /opt #wget https://pro ...
- Protobuf 安装及 Python、C# 示例
01| 简介02| 安装2.1 Windows 下安装03| 简单使用3.1 编译3.2 Python 示例3.3 C# 示例 01| 简介 Protobuf(Protocol Buffers),是 ...
- linux环境下protobuf安装
1. 到GitHub下载源码,执行解压命令后,进入解压后的目录 2. 执行./autogen,生成configure 3. 执行./configure --prefix=/usr/local/,pro ...
随机推荐
- 转:JAVA强制类型转换
object对象转换为String的一些总结 ----------------------------------------------------------------------------- ...
- Nopi .net下面的Excel第三方dll
相关参考资料:1.npoi官网:http://npoi.codeplex.com/2.用NPOI操作EXCEL--插入图片: http://www.cnblogs.com/atao/archive/ ...
- oracle 内外连接,左连接,右连接 区别
首先讲解一下 on 与where后面接的条件的区别 on和where条件的区别如下:1. on条件是在生成临时表时使用的条件,它不管on中的条件是否为真,都会返回左边表中的记录.2.where条件是在 ...
- linux下利用nginx部署python网站
首先目标机器需要安装python nginx uwsgi,其次,需要给Nginx写配置文件,大体内容如下,具体内容可见 http://blog.cn2p.com/web-server/nginx-uw ...
- 移动widget开发
发现Oracle----php连接有很多bug无法解决,只好转向php--连接mysql数据库,并装载了mysql两个文件,跟客户端NAVICAT_FOR_MYSQL,然后直接建表,用于测试,能够连通 ...
- LDA-math-LDA 文本建模
http://cos.name/2013/03/lda-math-lda-text-modeling/ 5. LDA 文本建模 5.1 游戏规则 对于上述的 PLSA 模型,贝叶斯学派显然是有意见的, ...
- 几款python集成开发环境
以下软件的测试环境为ArchLinux64位系统.对软件的介绍很粗略,详细介绍参考官网. 1-名称:eric 官网:http://eric-ide.python-projects.org/ 特点:该软 ...
- Cloudera CDH 、Impala本地通过Parcel安装配置详解
一.Parcel本地源与Package本地源的区别 本地通过Parcel安装过程与本地通过Package安装过程完全一致,不同的是两者的本地源的配置. 区别如下: Package本地源:软件包是.rp ...
- [slim] Slim - Faster, lightweight, a enginer for Ruby
URL: http://slim-lang.com/ Example: doctype html html head title Slim Examples meta name="keywo ...
- thinkphp 一个页面使用2次分页的方法
thinkphp内置ORG.Util.Page方法分页,使分页变得非常简单快捷. 但是如果一个页面里需要使用2次分页,就会产生冲突,这里先记录下百度来的解决办法 可以说是毫无技术含量的办法: 将Pag ...