win10 下 protobuf 与 qt
编译环境: win10 x64 编译器 :mingw32 cmake 使用场景:Qt4.8.7
下载 protobuf 最新的代码:https://github.com/google/protobuf

点击 configure

使用默认的 mingw32 即可,前提是把 mingw32/bin 加到环境变量Path里面。

然后,发现出错了 gmock 没有 ,可以直接勾选取消 gmock 也可以GitHub 自己下载 mock 补充到源码 (我这直接不生成测试了)


然后在自己指定的文件夹中生成了如下文件

开始编译 (mingw32-make )是 mingw32/bin 下的exe (此目录已在环境变量Path中了)等待完成即可。

成果就是它了

用 .\protoc.exe --proto_path=SRC --cpp_out=DST SRC/test.proto 生成文件(自己建立 src 和dst 文件夹 test.proto 放到src文件下)
// 指定语法规则
syntax = "proto3"; message Book
{
string name = ;
int32 pages = ;
float price = ;
} message Student
{
int32 age = ;
string name = ;
float score = ;
repeated Book arrBook = ;
}
生成 test.pb.h 和 test.pb.cc 建立一个Qt项目测试一下吧
void MainWindow::on_pushButton_clicked()
{
//GOOGLE_PROTOBUF_VERIFY_VERSION;
Book book;
Book book2;
book.set_name("哈哈shishi");
book.set_pages();
book.set_price(2.63);
//qDebug()<< book.IsInitialized();
string str ;
book.SerializePartialToString(&str);
book2.ParseFromString(str);
qDebug()<<QString::fromUtf8(book2.name().c_str())<< " "<<book2.price()<<" "<<book2.pages();
}
包含生成的头文件
#include "test.pb.h"
#include <QDebug>
#include <iostream>
using namespace std;
配置一下 头文件和库文件

最后就是结果了,收工。
win10 下 protobuf 与 qt的更多相关文章
- Win10下部署VS+Qt+OpenCV+darknet(YOLO)集成环境
VS+Qt集成环境 下载VS与Qt并安装. VS:官网链接 Qt:下载链接 将Qt的bin目录加入PATH路径 bin目录举例:D:\development\Qt\5.12.0\msvc2017_64 ...
- win10 下visual studio 2015 在调试模式下不能跟踪源文件
win10 下visual studio 2015 在调试模式下不能跟踪源文件,只要一调试就会关闭(隐藏)打开的文档,非常不方便.经过一番折腾,发现是配置的问题. 如果安装多个版本的VS,请删除对应版 ...
- win10下的使用
一.win10下使用win7那样的图片查看器快些. 打开图片的设置,关闭自动增强我的图片 二.查看win10秘钥 1.打开注册表,依次定位:HKEY_LOCAL_MACHINE/SOFTWARE/Mi ...
- Win7/Win8/Win8.1/Win10下的DragEnter DragDrop事件不触发
Win7/Win8/Win8.1/Win10下的DragDrop事件不触发 2011-02-02 来自:博客园 字体大小:[大 中 小] 摘要:你的应用程序需要从windows资源管理器拖动文件到 ...
- Win10下Android studio配置
Win10下Android studio配置 一.安装Android Studio的准备工作 1.下载好JDK,去官网上找一个下载下来 2.安装JDK.并配置环境变量.安装过程:本人将使用的是jdk- ...
- Win10下PB停在欢迎窗口界面
问题:Win10下不能打开PB12.5,PB12.6,一直停在欢迎窗口界面. 解决方法:把服务"Touch Keyboard and Handwriting Panel Service&qu ...
- win10下iis部署asp.net core rtm
随着ASP.NET Core 1.0 rtm的发布,网上有许多相关.net core 相关文章,今刚好有时间也在win10环境上搭建下 ASP.NET Core的部署环境,把过程记录下给大家. 1. ...
- win10下安装Ubuntu + 修复Ubuntu引导
如何在已安装 Windows 10 的情况下安装 Linux(Ubuntu 15.04)双系统? - Microsoft Windows - 知乎http://www.zhihu.com/questi ...
- win10下vs2015配置Opencv3.1.0过程详解
下载安装Opencv3.1.0 下载Opencv3.1.0,进入官网,点击opencv for windows即可下载. 点击运行下载好的文件.实际上,opencv的安装程序就是解压缩文件,个人因为 ...
随机推荐
- django 2.0 中URL的include方法使用分析
一.问题出现: 在使用Django2.0,配置全局URL时,希望指向某个APP的URL,配置如下: from django.contrib import admin from django.conf. ...
- WIN10下 VS2017+OpenCv 3.4.1 配置
写篇博客来记录一下opencv在VS中的配置. 一.下载OpenCv安装包 下载的途径有三种: 1.官网下载 但是官网下载真的是贼头大,首先下载好好的突然说下载中断,而且无法恢复,此外,还慢,毕竟外网 ...
- 一个轻巧高效的多线程c++stream风格异步日志(二)
目录 一个轻巧高效的多线程c++stream风格异步日志(二) 前言 LogFile类 AsyncLogging类 AsyncLogging实现 增加备用缓存 结语 一个轻巧高效的多线程c++stre ...
- ThreadLocal和InheritableThreadLocal使用
InheritableThreadLocal代码 public class InheritableThreadLocal<T> extends ThreadLocal<T> { ...
- 并发编程(二):全视角解析volatile
一.目录 1.引入话题-发散思考 2.volatile深度解析 3.解决volatile原子性问题 4.volatile应用场景 二.引入话题-发散思考 public class T1 { /*vol ...
- 智能指针scoped_ptr
对应C++11中的unique_ptr #include <iostream> #include <memory> class foo { public: foo() { st ...
- Odoo(OpenERP)配置文件openerp-server.conf详解
原文地址:http://blog.csdn.net/wangnan537/article/details/42283465 [options] ; addons模块的查找路径 addons_path ...
- 图解openssl实现私有CA
原文地址:http://xxrenzhe.blog.51cto.com/4036116/1370114 废话不多说,先上图 说明1:蓝色部分为主要流程,黄色箭头指向具体的操作步骤 什么是openssl ...
- [SQLite][Error Code] 21 misuse
若使用SQLite API時,出現错误代码21(misuse),可能是你的SQLiteConnection同時打開(Open)了兩個相同的Data source,所造成的错误. 解決方法:检查代码 ...
- uva 10406 Cutting tabletops
Problem D: Cutting tabletops Bever Lumber hires beavers to cut wood. The company has recently receiv ...