Windows下google/protobuf v3.5.1--VS2017 x86 x64编译、使用
2018-01-23 12:35
721 查看
一、编译
1、准备工作安装下列软件
VS2017CMake:https://cmake.org/download/
2、下载protobuf的C++版本的源代码
https://github.com/google/protobuf/releases3、解压源码到任意目录,最好不要带中文路径,然后使用CMake配置VS2017的工程。
4、点击第3点中Configure后会弹出如下配置选项,根据需要选择生成32位还是64位的VS2017工程。
5、点击Finish后进行参数配置。我配置生成为动态库工程
6、最后点击图中的Generate按钮后生成VS2017对应工程,直接用VS2017打开后编译直接生成对应的protobuf库。
二、使用
具体C++使用详见官方文档:https://developers.google.com/protocol-buffers/docs/cpptutorial说下使用过程中的注意事项:
1)使用protoc.exe使.proto文件生成.h .cpp文件的命令:
protoc -I=$SRC_DIR --cpp_out=$DST_DIR $SRC_DIR/addressbook.proto
注意空格,上述参数-I为源目录(你的应用程序源代码位于哪里——如果你没有提供任何值,将使用当前目录)、目标目录(你想要生成的代码放在哪里;常与
$SRC_DIR相同),以及你的
.proto文件路径
2)关闭VS2015的工程属性----C/C++----常规----SDL检查 为否
3)因为使用的使动态库所以在stdfx.h预编译头加入下面宏定义,否则编译报错。
#define PROTOBUF_USE_DLLS
VS2015下的测试工程以及编译好的protobuf库:
http://download.csdn.net/download/qing666888/10220793
相关文章推荐
- Windows VS2017 下 使用 x265 第一回 x265编译调试的初体验
- Windows VS2017 下 使用 x265 第二回 x265编译调试续
- 关于MYSQL编程使用VS2015编译报“LNK4272库计算机类型“X86”与目标计算机类型“x64”冲突”的解决办法
- 关于使用VS2015编译项目时出现LNK1112 module machine type 'x64' conflicts with target machine type 'X86'
- Windows下使用VS编译Lua
- windows 7 x64安装openssl,使用vs2012命令nmake编译
- windows 上使用vs编译ffmpeg
- 从零开始编译webkit 步步为营铁定成功! 之 WINDOWS 8 X64 ON VS 2010
- windows下使用VS2015编译V8 JavaScript引擎(v5.5 - 2016/09)
- windows 64位 VS2015 “模块计算机类型“x64”与目标计算机类型“X86”冲突解决方案
- 基于windows下使用CMake和VS2013编译OpenCV的环境搭建
- Google Breakpad--VS2015 编译、使用、定位错误(如何使用gyp)
- windows下使用VS2015编译V8 JavaScript引擎
- 在windows下使用vs2013编译和调试mysql源代码
- windows平台使用vs2013编译lua-5.2.3
- windows下Google Protocol Buffer 编译安装(vs)教程
- 【VS开发】【Live555-rtsp】在windows 使用vs2008编译live555
- Windows平台使用VS2013编译VLC源码
- 模拟Linux命令行方式在Windows下编译C/C++程序(使用VS编译器)
- 使用OpenCV-2.4.0.exe文件编译x86或x64平台Visual Studio 2005/2008/2010目标文件