【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

  再加上src\google目錄的頭文件,即可使用

 

五、protobuf的使用

5.1 將protoc.exe放到一個目錄下,新建一個build.bat文件,內容寫入protoc --cpp_out=./ *.proto

5.2 將已有的.proto文件放到這個目錄下,執行build.bat,就自動生成了對應h和cc文件

5.3 在應用工程里,加入protobuf的src\google目錄頭文件和libprotobuf.lib、libprotoc.lib庫依賴,再加上生成的PB協議h和cc文件就可以解析PB格式協議了

 

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

 

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

>> 我的補充:

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

1、編譯完成后,可以在vsprojects\Release下發現3個lib和一個exe文件,他們分別是libprotobuf.lib,libprotobuf-lite.lib,libprotoc.lib和protoc.exe。(編譯模式為Release 模式),可以將lib文件拷貝到一個lib目錄下;

2、將下載的protobuf源碼目錄下的src目錄下的google文件夾拷貝到一個include目錄下;

3、目錄結構如下

  ...\installed third party\pb\compile\include\....

  ...\installed third party\pb\compile\lib\....

  ...\installed third party\pb\compile\protoc.exe

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

  鏈接:http://pan.baidu.com/s/1c1JZjmo 密碼:f4qr 

5、Protoc的使用

    • ...\installed third party\pb\compile 添加到PATH環境變量
    • cmd下輸入:"protoc  -I. common.proto --cpp_out=.“,就可以生成對應的common.pb.cc和common.pb.h了。

6、Qt中引入

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM