• 【ProtoBuffer】windows上安装ProtoBuffer3.1.0 (附已编译资源)


      

    ------- 17.9.17更新  ---

    以下这些方法都是扯淡,对我的机器不适用,我后来花了最后成功安装并亲测可用的方法不是靠vs编过的,vs生成的库引入后函数全部报undefine reference to...的错误;

    我前前后后花了半个月的空闲时间(其实是拖了半个月)+几个周末 来弄,始终就是死活硬是各种不对,

    按照了网上的这段话的描述设置了 也不行。

    首先要明确protobuf默认编译出来的是静态库,而且是动态链接到CRT库的。 
    自己的工程在链接protobuf的lib文件的时候,自己的工程所使用的平台(Win32/x64)、模式(Debug/Release)和链接CRT的方式(MD/MDD/MT/MTD)都要与protobuf库编译时使用的平台、模式和链接CRT方式相同。 
    只要确保以上的内容,就不会有链接错误了

    今天发现CMAKE里编译器里除了默认VS的选项外,还有一大堆,我选了mingw,电脑里也装了,然后,,一次就成功了!我大概了解makefile和CMAKE的一些原理,具体到一些参数设置也不知道。

    好,重点来了。

    相关设置

    选择这个选项

      

     configue -> generate后退出CMAKE

    进入上上图设置的build-mingw目录,执行命令:

    >> make ( 等待~~)

    >> make install 

    然后在上上图设置的prefix目录中就会有我们想要的文件啦!include文件夹和lib文件夹。

    libprotobuf.dll有8.6M;原来方法生成的只有1M左右。。。

    最后就把文件放置到相应位置。

    新的:

    链接:http://pan.baidu.com/s/1bYYnDG 密码:o6o6

    ---------------------------

     我不相信windows了,坑 :( 

    ------ 以下是原文 -----

    百度了很久,所介绍的方法很多都不适用,搜出来的文章都是找到vs的工程文件然后balabala...,但因为gihub上的最新版本protobuf3.3.0,是不带vs的工程文件了,官方的readme感觉有点偏Linux平台,我卡了很久。

      后来一想,让搜索引擎的结果只呈现近1年的结果,直接就有了。需要自己用CMAKE工具进行MAKE生成VS工程文件,过程其实并不难。

      以下是原文: 

    一、下载protobuf 

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

    二、 下载cmake

      下载地址:https://cmake.org/download/ 

      我的系统是64位的,所以下载的是64位的安装包,大家可以视自己的情况下载合适的安装包

    三、 生成protobuf的vs工程 

      打开Cmake(cmake-gui),分别选择protobuf目录下的cmake目录,以及希望vs工程文件存放目录;

    四、生成protobuf库 

      找到生成的vs工程打开,里面有很多工程,我们只关心红框中的两个工程,设置x64、MTd编译,

      在工程目录下的Debug和Release目录下生成libprotobuf.lib、libprotoc.lib、protoc.exe

      再加上srcgoogle目录的头文件,即可使用

    五、protobuf的使用

    5.1 将protoc.exe放到一个目录下,新建一个build.bat文件,内容写入protoc --cpp_out=./ *.proto

    5.2 将已有的.proto文件放到这个目录下,执行build.bat,就自动生成了对应h和cc文件

    5.3 在应用工程里,加入protobuf的srcgoogle目录头文件和libprotobuf.lib、libprotoc.lib库依赖,再加上生成的PB协议h和cc文件就可以解析PB格式协议了

     

     (原文地址:http://blog.sina.com.cn/s/blog_62949ff40102x2wo.html

     

    ----------------------------------------------------------------------------

    >> 我的补充:

    ----------------------------------------------------------------------------

    1、编译完成后,可以在vsprojectsRelease下发现3个lib和一个exe文件,他们分别是libprotobuf.lib,libprotobuf-lite.lib,libprotoc.lib和protoc.exe。(编译模式为Release 模式),可以将lib文件拷贝到一个lib目录下;

    2、将下载的protobuf源码目录下的src目录下的google文件夹拷贝到一个include目录下;

    3、目录结构如下

      ...installed third partypbcompileinclude....

      ...installed third partypbcompilelib....

      ...installed third partypbcompileprotoc.exe

    4、打包好了,分享链接如下:

      链接:http://pan.baidu.com/s/1c1JZjmo 密码:f4qr 

    5、Protoc的使用

      • ...installed third partypbcompile 添加到PATH环境变量
      • cmd下输入:"protoc  -I. common.proto --cpp_out=.“,就可以生成对应的common.pb.cc和common.pb.h了。

    6、Qt中引入

  • 相关阅读:
    软件产品案例分析 ——华为软件开发云
    软件工程实践2017第一次作业
    软件工程实践2017结对第二次作业
    SDN第一次作业
    路由器工作原理
    Spring框架之springweb web源码完全解析
    Spring框架之springweb http源码完全解析
    Spring框架之jms源码完全解析
    Spring框架之AOP源码完全解析
    比特币里的计算机知识
  • 原文地址:https://www.cnblogs.com/tyw66/p/7352033.html
Copyright © 2020-2023  润新知