Qt中編譯和設置protobuf

我們在使用Qt開發做項目開發是時候, 經常會進行數據的跨平臺傳輸, 就需要對數據進行序列化, 序列化的方式有很多, 現在項目開發最常用就是google公司開發的protobuf。今天傳輸播客老師就給大家詳細講解一下如何在Qt下編譯以及使用protobuf。

1. 準備工作

Qt中編譯和設置protobuf

2. 生成protbuf庫文件

2.1 cmake的設置與庫的生成

找到編譯的源為protobuf源碼中的cmake文件夾,

Qt中編譯和設置protobuf

之後建立輸出目錄,這裡在D盤下創建輸出目錄output-project,即:D:\\output-project,並將其設置為目標文件夾,在cmake中做如下設置:

Qt中編譯和設置protobuf

然後點擊configure按鍵,選擇MinGW編譯,默認的編譯器即可,也就是QT自帶的編譯器,如圖所示。

Qt中編譯和設置protobuf

點擊finish按鍵,開始配置,配置結束後,界面如下:

Qt中編譯和設置protobuf

在列表中按照下圖進行選擇

Qt中編譯和設置protobuf

點擊Generate生成,如圖所示。

Qt中編譯和設置protobuf

生成結束後,我們發現D:\\output-project文件夾中出現了makefile文件,如圖所示。

Qt中編譯和設置protobuf

進入D:\\output-project文件夾,在該目錄下按住shift然後鼠標右鍵彈出右鍵菜單,打開命令行窗口,也就是下邊截圖中的Powershell窗口

Qt中編譯和設置protobuf

在命令行窗口中輸入mingw32-make命令,開始編譯源代碼,如下圖所示。

Qt中編譯和設置protobuf

等待幾分鐘編譯結束。

Qt中編譯和設置protobuf

編譯結束後,我們打開D:\\output-project文件夾可以看到生成的庫文件和protoc.exe。如下圖所示。

Qt中編譯和設置protobuf

3. 在QT中配置protobuf

創建Qt項目,在項目的pro文件中添加如下設置:

Qt中編譯和設置protobuf

protobuf的頭文件目錄和庫目錄說明:

1. 根據上邊的配置頭文件在D:\\protobuf-3.11.4\\src目錄中

a) 頭文件在源碼目錄的src目錄中

2. 動態庫目錄在D:\\output-project中

3. 動態庫的名字為 libprotobuf.dll在指定的時候

a) –L: 動態庫的絕對路徑

b) –l:動態庫的名字,需要掐頭(lib)去尾(dll)


分享到:


相關文章: