码迷,mamicode.com
首页 > 其他好文 > 详细

vc2015编译protobuf

时间:2016-08-01 20:51:53      阅读:258      评论:0      收藏:0      [点我收藏+]

标签:

下载地址:https://github.com/google/protobuf

1.编译
通过cmake生成sln文件来编译
用cmd命令 cd 到3.0.0-beta-4\cmake

mkdir build & cd build
mkdir solutionx86 & cd solutionx86
cmake -G "Visual Studio 14 2015" -DCMAKE_INSTALL_PREFIX=../../../../install ../.. -Dprotobuf_BUILD_TESTS=OFF -Dprotobuf_BUILD_SHARED_LIBS=ON -DCMAKE_GENERATOR_TOOLSET=v140_xp

如果要编译64位的话

cmake -G "Visual Studio 14 2015 Win64" -DCMAKE_INSTALL_PREFIX=../../../../install ../.. -Dprotobuf_BUILD_TESTS=OFF -Dprotobuf_BUILD_SHARED_LIBS=ON -DCMAKE_GENERATOR_TOOLSET=v140_xp

注意中间不能有回车之类的,该命令行生成的是dll版本的(静态库的话要注意lib的运行库),其它版本请查考cmake目录下面的README.md

 

2.hello world

将examples目录下满的addressbook.proto,拷贝到生成的protoc.exe目录下面,cd到该目录

protoc --cpp_out=./ addressbook.proto

这样就会生成addressbook.pb.cc , addressbook.pb.h  两个文件,包含到你的项目中

addressbook.pb.cc,需要取消预编译头或者手动加入#include "stdafx.h"

然后包含头文件和lib文件

直接用examples目录下面的 add_person.cc里面的代码测试即可

 

注意:使用dll的时候需要定义宏PROTOBUF_USE_DLLS,小心不要将这个PROTOBUF_USE_DLLS定义在stdafx.h里面,然后你又取消了预编译头!

 

vc2015编译protobuf

标签:

原文地址:http://www.cnblogs.com/ultracpp/p/5726968.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!