vs2022配置protobuf

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


一、编译protobuf

下载protobuf 21.9

https://github.com/protocolbuffers/protobuf/releases
在这里插入图片描述


cmake编译protobuf

解压好下载的压缩包,在protobuf-3.21.9文件夹内创建visualstudio文件夹

打开cmakegui

source code选择protobuf的cmake文件夹

build the binaries选择刚刚创建的visualstudio文件夹

单击左下角的configure

第一个下拉框选择visual studio 17 2022,其他默认,点击finish
在这里插入图片描述


勾选想要的配置选项后点击generate

在这里插入图片描述


打开vs2022

点击visualstudio文件夹内的protobuf.sln进入vs
选择好配置,debug或release都行
在这里插入图片描述


右击ALL_BUILD选择重新生成(我这里生成的为debug版本)

在这里插入图片描述

进入到visualstudio文件夹的Debug文件夹内

然后在protobuf文件夹内创建一个vs_test文件夹 (取名随意),里面再创建一个bininclude文件夹

然后复制Debug文件夹内的所有文件到bin里面
在这里插入图片描述

复制protobuf文件夹下src里的google文件夹到include文件夹内

在这里插入图片描述

二、配置vs

右击项目选择属性

在这里插入图片描述

在VC++中添加包含目录,为vs_testinclude文件夹

在这里插入图片描述

再添加库目录,为vs_test下的bin文件夹

在这里插入图片描述

并在链接器输入选项中添加附加依赖项
libprotobufd.lib
libprotocd.lib

在这里插入图片描述

C/C++的预处理器选项中添加预处理器定义PROTOBUF_USE_DLLS

在这里插入图片描述

点击确定并应用

三、添加环境变量

新建系统变量PROTOBUF_HOME

在这里插入图片描述

系统变量Path中添加%PROTOBUF_HOME%

在这里插入图片描述

四、测试

在项目目录中创建test.proto文件,并写入以下内容
(新建文本文件并修改后缀即可)

syntax = "proto3";

message Test
{
	string name = 1;
}

右击项目所在文件夹空白处选择在终端中打开

并输入,protoc --cpp_out=. ./test.proto

在这里插入图片描述

添加生成的.cc和.h文件到项目中

在这里插入图片描述

选择添加现有项,添加上述两个文件

在这里插入图片描述

测试代码

#include <iostream>
#include "test.pb.h"

int main()
{
    Test test;
    test.set_name("Hello World");
    std::string str;

    //序列化到字符串str
    test.SerializeToString(&str);
    std::cout << "序列化到字符串:" << str << std::endl;

    //从字符串中解析
    Test test2;
    test2.ParseFromString(str);
    std::cout << "从字符串解析:" << test.name() << std::endl;

    return 0;
}

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值