windows下Google Protocol Buffer 编译安装教程
2016-03-31 16:57
288 查看
protobuf的全称是Protocol Buffer,它是google 的一种数据交换的格式,可用于用于分布式应用之间的数据通信或者异构环境下的数据交换,
最近因为项目的需求,需要接触Protobuf,在官方提供的压缩包中,提供了Linux下的编译脚本,但是,由于项目在windows下开发,因此,需要在Windows编译和安装Protobuf,结合自己的探索,希望能够帮助到初次接触到protobuf的朋友
下载可以到protobuf官网下载:http://code.google.com/p/protobuf/downloads/list,一般下载第一个或是第二个,因为第一,二个是源码包,第三个是可执行文件
解压压缩包后,会得到类似于下面的文件列表:
![](http://kuaile.in/wp-content/uploads/2012/10/20121007205245.jpg)
在解压后的文件夹中,打开vsprojects目录,目录中的文件如图所示:
![](http://kuaile.in/wp-content/uploads/2012/10/20121007205538.jpg)
打开libprotobuf.vcproj(这个是vs的工程文件,打开前请确认安装了vs2005
或vs2008,vs2010等等),在打开工程中, 可能需要转换工程,直接转换就行了
打开后,vs的工程页面如图所示:
![](http://kuaile.in/wp-content/uploads/2012/10/20121007211521.jpg)
右键分别生成libprotobuf,libprotobuf-lite,libprotoc,protoc这四个工程(编译模式为Release
模式):
![](http://kuaile.in/wp-content/uploads/2012/10/20121007211810.jpg)
编译完成后,可以在vsprojects\Release下发现3个lib和一个exe文件,他们分别是libprotobuf.lib,libprotobuf-lite.lib,libprotoc.lib和protoc.exe
:
![](http://kuaile.in/wp-content/uploads/2012/10/20121007213726.jpg)
![](http://kuaile.in/wp-content/uploads/2012/10/20121007213743.jpg)
将得到的libprotobuf.lib,libprotobuf-lite.lib,libprotoc.lib和protoc.exe拷贝到系统盘的windows目录下。如果你的系统安装在C盘,那么就拷贝到c:\windows目录下
假设在E:\test目录下有一个名为addressbook.proto的proto文件,那么打开CMD,输入下面的命令就可以生成C++源码了:
?
![](http://kuaile.in/wp-content/uploads/2012/10/20121007214943.jpg)
生成了addressbook.pb.h和addressbook.pb.cc文件,将这个文件拷贝到需要用到的工程里就可以直接用了:
![](http://kuaile.in/wp-content/uploads/2012/10/20121007215117.jpg)
至此,protobuf的编译和使用教程就这么多了,如果有错误的地方,还请多多指出
最近因为项目的需求,需要接触Protobuf,在官方提供的压缩包中,提供了Linux下的编译脚本,但是,由于项目在windows下开发,因此,需要在Windows编译和安装Protobuf,结合自己的探索,希望能够帮助到初次接触到protobuf的朋友
1.下载Google Protocol Buffer源码包
下载可以到protobuf官网下载:http://code.google.com/p/protobuf/downloads/list,一般下载第一个或是第二个,因为第一,二个是源码包,第三个是可执行文件
2.解压压缩包
解压压缩包后,会得到类似于下面的文件列表:![](http://kuaile.in/wp-content/uploads/2012/10/20121007205245.jpg)
3.编译vs工程
在解压后的文件夹中,打开vsprojects目录,目录中的文件如图所示:![](http://kuaile.in/wp-content/uploads/2012/10/20121007205538.jpg)
打开libprotobuf.vcproj(这个是vs的工程文件,打开前请确认安装了vs2005
或vs2008,vs2010等等),在打开工程中, 可能需要转换工程,直接转换就行了
打开后,vs的工程页面如图所示:
![](http://kuaile.in/wp-content/uploads/2012/10/20121007211521.jpg)
右键分别生成libprotobuf,libprotobuf-lite,libprotoc,protoc这四个工程(编译模式为Release
模式):
![](http://kuaile.in/wp-content/uploads/2012/10/20121007211810.jpg)
4.编译完成
编译完成后,可以在vsprojects\Release下发现3个lib和一个exe文件,他们分别是libprotobuf.lib,libprotobuf-lite.lib,libprotoc.lib和protoc.exe:
![](http://kuaile.in/wp-content/uploads/2012/10/20121007213726.jpg)
![](http://kuaile.in/wp-content/uploads/2012/10/20121007213743.jpg)
5.拷贝文件到windows目录下:
将得到的libprotobuf.lib,libprotobuf-lite.lib,libprotoc.lib和protoc.exe拷贝到系统盘的windows目录下。如果你的系统安装在C盘,那么就拷贝到c:\windows目录下
6.编译proto文件,生成c++文件
假设在E:\test目录下有一个名为addressbook.proto的proto文件,那么打开CMD,输入下面的命令就可以生成C++源码了:?
![](http://kuaile.in/wp-content/uploads/2012/10/20121007214943.jpg)
生成了addressbook.pb.h和addressbook.pb.cc文件,将这个文件拷贝到需要用到的工程里就可以直接用了:
![](http://kuaile.in/wp-content/uploads/2012/10/20121007215117.jpg)
至此,protobuf的编译和使用教程就这么多了,如果有错误的地方,还请多多指出
转载请注明来自蒲公英博客@Kuaile.IN,本文地址:http://kuaile.in/archives/1214 除非注明,蒲公英博客文章均为原创,转载请注明出处和链接!
相关文章推荐
- 好厉害的库edge.js!实现C#与node.js互操作
- 屏幕旋转的事件和样式 事件
- CSS巧用content内容生成
- jquery的mouseover和mouseout闪烁问题
- Javascript模块化编程(二):AMD规范
- Javascript模块化编程(一):模块的写法
- 禁用 radio 和 checkbox 默认样式
- angularjs $state.go页面不刷新数据
- JavaScript的Tab切换
- jquery.cookie.js 中cookie删除问题
- javascript 模板引擎:artTemplate-3.0
- Protocol Buffer的安装与使用
- 【BZOJ1016】[JSOI2008]最小生成树计数【最小生成树】【搜索】
- Google Protocol Buffer 的使用和原理
- 笔记 Json各种格式解析
- Protocol Buffer技术详解(数据编码)
- Protocol Buffer技术详解(Java实例)
- HTML5火焰文字特效DEMO演示
- CSS3笔记
- JS面向对象的程序设计