QT项目添加Protobuf(超详细)

发布于:2022-12-06 ⋅ 阅读:(351) ⋅ 点赞:(0)

个人项目中已用于数据库存储和文件存储。

1.下载protobuf源码

首先需要下载源码,选择C++版本。

 解压到一个单独的文件夹protobuf_vision,并建立一个用于CMake编译输出的文件夹output;

 

文件夹protobuf-3.21.6内为源码,如图:

 2.下载CMake

 下载cmake,选择windows版本

 

 解压到一个文件夹,双击打开cmake-gui.exe

3.编译protobuf源码

找到之前protobuf源码文件夹里的cmake路径和源码输出路径output;

点击config,选择项目版本(本人项目版本为vs2019 32位),如果是64位程序,则不用选第二个,为空默认为64位,点击finish,成功配置

 勾选如图选项,

 点击advanced,修改CMAKE_CXX_FLAGS值为-std=gnu++11;

 点击Generate,生成解决方案

 4.生成库文件

选择对应vs版本(本人版本为vs2019),打开输出文件夹中的解决方案,

 选择Release版本,win32,同时选择libprotobuf,protoc,libprotoc,右键菜单,点击生成选定内容;

 将刚刚生成的三个文件libprotobuf.lib,libprotoc.lib和protoc.exe拷贝到项目中,项目中创建单独的文件夹protobuf存放,

 

5.项目中支持protobuf

配置系统环境变量

 打开cmd,输入命令:protoc -I=D:\Project\ProtobufTest\protobuf --cpp_out=D:\Project\ProtobufTest\protobuf Channel.proto,前一个路径为protoc.exe路径,后一个路径为生成文件的路径,生成在此目录下(.proto文件自己创建)

可以使用脚本自动生成

 

将文件Channel.pb.cc和Channel.pb.cc手动添加到项目中;

 添加动态库到项目中(静态库可能会有问题)

 

将源码文件夹src复制放到工程中,并添加src文件夹路径,不然会找不到头文件

 

 

工程编译通过,完毕

本文含有隐藏内容,请 开通VIP 后查看

网站公告

今日签到

点亮在社区的每一天
去签到