vs2008 2010 2013初次尝试配置protobuf

来源:互联网 发布:word2016破解知乎 编辑:程序博客网 时间:2024/05/18 03:56

1)首先上网搜索了一下,找到以下地址:

https://github.com/google/protobuf

但是这么多版本选哪个呢,顿时懵了。

需要编译windows 的vs版本,找了一下,好像只有2.6.1目录下有vsprojects,所以就它了。

Switch branches/tags ->tags->2.6.1->Clone or download->Download Zip

下载好之后,解压。


2)接下来先不忙着编译,先配置路径和环境变量。

比如我的路径配置是:

  在C:\下新建目录“ProtoBuf\protobuf-2.6.1\{bin,lib\{vs9.0,vs10.0,vs12.0},src}”。

  然后配置环境变量,新增“PROTOBUF_ROOT”,值为“C:\ProtBuf\protobuf-2.6.1”。

  然后修改Path环境变量,Path=%Path%;%PROTOBUF_ROOT%\bin。


3)进入目录\protobuf-2.6.1\vsprojects

因为我机器上有vs2008,vs2010,vs2013,所以我编译了支持三个版本的protobuf库。


4)编译vs2008支持的库

首先使用vs2008打开.sln文件,其中有两个gtest的项目可能加载不成功,不用管,不会影响后续编译,然后[debug][win32] rebuild all,如果编译有失败,请重新逐个工程编译。全部编译完成后,在\protobuf-2.6.1\vsprojects\debug目录中会出现3个.lib文件和一个.exe文件,.exe可以不用管,将三个.lib文件拷贝出来分别重命名成<原文件名>d.lib,这是我们后续用到protobuf时需要链接的库文件。同样切换[release][win32] rebuild all,找到\protobuf-2.6.1\vsprojects\release下的三个.lib,拷贝出来和debug的三个文件一起放在步骤2配置好的“C:\ProtBuf\protobuf-2.6.1\lib\vs9.0”目录。


5)编译vs2010支持的库

用vs2010打开.sln文件,编译过程同vs2008,注意debug改名。然后将生成的6个.lib放在“C:\ProtBuf\protobuf-2.6.1\lib\vs10.0”目录。


6)编译vs2013支持的库

用vs2010打开.sln文件,编译过程同vs2008,注意debug改名。然后将生成的6个.lib放在“C:\ProtBuf\protobuf-2.6.1\lib\vs12.0”目录。


7)拷贝下载的zip中“\protobuf-2.6.1\src”到“C:\ProtBuf\protobuf-2.6.1\src”目录。


8)将上面生成的某一个release版本的“protoc.exe”拷贝到“C:\ProtBuf\protobuf-2.6.1\bin”目录。


经过以上过程,支持vs2008,vs2010,vs2013的32位protobufs sdk就完成了。

接下来需要配置vs来完成对protobuf的使用。


vs2008在“工具->选项->项目和解决方案->VC++目录”中,“包含文件”中增加“$(PROTBUF_ROOT)\src”,“库文件”中增加“$(PROTBUF_ROOT)\lib\vs9.0”。
然后编写.proto文件,命令行调用“protoc --cpp_out=. xxx.proto”,将生成的.h和.cc文件放到vs2008的工程中,就可以使用protobuf了。

vs2010和vs2013需要在项目属性中设置以增加包含probuf包含文件路径和增加包含probuf库文件路径。
注意:vs2010的库路径需要改成“$(PROTBUF_ROOT)\lib\vs10.0”,vs2013的库路径需要改成“$(PROTBUF_ROOT)\lib\vs12.0”。

好了,自己试一下吧。
0 0
原创粉丝点击