教育行业A股IPO第一股(股票代码 003032)

全国咨询/投诉热线:400-618-4000

如何在Qt下编译以及使用protobuf?

更新时间:2020年04月21日14时19分 来源:传智播客 浏览次数:

我们在使用Qt开发做项目开发是时候, 经常会进行数据的跨平台传输, 就需要对数据进行序列化, 序列化的方式有很多, 现在项目开发最常用就是google公司开发的protobuf。今天就给大家详细讲解一下如何在Qt下编译以及使用protobuf。推荐了解传智播客C++培训课程

1. 准备工作

1.1 下载并安装Qt

QT的下载地址,建议使用5.7以上版本:https://download.qt.io/archive/qt/

选择MinGW 版本选择 next 即可完成安装。

1.2 下载cmake并安装

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

根据向导使用默认选项设置即可完成安装。

1.3 下载protobuf的源码

Protbuf源码下载地址:https://github.com/protocolbuffers/protobuf/releases

选择c++版本源码下载到本地,并解压缩

Qt中编译和设置protobuf01


我这里将 压缩包下载到D盘根目录,并解压缩得到目录: D:\protobuf-3.11.4

2. 生成protbuf库文件

2.1 cmake的设置与库的生成

找到编译的源为protobuf源码中的cmake文件夹,

Qt中编译和设置protobuf02


之后建立输出目录,这里在D盘下创建输出目录output-project,即:D:\output-project,并将其设置为目标文件夹,在cmake中做如下设置:

Qt中编译和设置protobuf03


然后点击configure按键,选择MinGW编译,默认的编译器即可,也就是QT自带的编译器,如图所示。

1587448512979_Qt中编译和设置protobuf04.jpg


点击finish按键,开始配置,配置结束后,界面如下:

Qt中编译和设置protobuf05


在列表中按照下图进行选择

Qt中编译和设置protobuf06

点击Generate生成,如图所示。

Qt中编译和设置protobuf07


生成结束后,我们发现D:\output-project文件夹中出现了makefile文件,如图所示。

Qt中编译和设置protobuf08


进入D:\output-project文件夹,在该目录下按住shift然后鼠标右键弹出右键菜单,打开命令行窗口,也就是下边截图中的Powershell窗口。

1587448630295_Qt中编译和设置protobuf09.jpg

在命令行窗口中输入mingw32-make命令,开始编译源代码,如下图所示。

Qt中编译和设置protobuf10

等待几分钟编译结束。

Qt中编译和设置protobuf11

编译结束后,我们打开D:\output-project文件夹可以看到生成的库文件和protoc.exe。如下图所示。

1587448676507_Qt中编译和设置protobuf12.jpg


3. 在QT中配置protobuf

创建Qt项目,在项目的pro文件中添加如下设置:

1587448687393_Qt中编译和设置protobuf13.jpg

protobuf的头文件目录和库目录说明:

1. 根据上边的配置头文件在D:\protobuf-3.11.4\src目录中

    a) 头文件在源码目录的src目录中

2. 动态库目录在D:\output-project中

3. 动态库的名字为 libprotobuf.dll在指定的时候

    a) –L: 动态库的绝对路径

    b) –l:动态库的名字,需要掐头(lib)去尾(dll)

猜你喜欢:

Navicat是什么?Navicat Premium下载与安装教程

0 分享到:
和我们在线交谈!