• VS2022 编译protobuf , qt 使用


    一、下载源码

            protobuf: 同步 https://github.com/protocolbuffers/protobuf (gitee.com)

            下载如v3.11.2 版本

    二、下载CMake

    三、编译

            1、在1处选择源码目录下的cmake 目录;在2处选择一处空目录(自己随便建)

            2、点击config,选择编译器、和平台、点完成

            3、配置第一次可能失败、可以把下面勾选的只保留MSVC_STATIC_RUNTIME,

     4 、再次config ,然后generate,,

    5、在输出目录下会生成工程,

    6、使用2022打开工程进行编译即可

    注意:若需要在Qt+MSVC开发方式下,调用protobuf的lib,那么需要修改libprotobuf工程属性,然后再编译生成lib。

    “配置属性”->“C/C++”->“代码生成”->运行库,Debug版选择“/MDd”,Release版选择“/MD”,“应用”->"确定"。

    参考《QT MSVC版本使用protobuf库》:https://blog.csdn.net/f1jiaziqing2/article/details/86474311

    7、qt 使用: pri 的代码

    1. # all platforms
    2. INCLUDEPATH += $$PWD
    3. INCLUDEPATH += $$PWD/include
    4. INCLUDEPATH += $$PWD/include/google
    5. INCLUDEPATH += $$PWD/include/google/protobuf
    6. greaterThan(QT_MAJOR_VERSION,4){
    7. TARGET_ARCH=$${QT_ARCH}
    8. }else{
    9. TARGET_ARCH=$${QMAKE_HOST.arch}
    10. }
    11. contains(TARGET_ARCH, x86_64){
    12. message("64-bit")
    13. CONFIG(debug, debug|release){
    14. LIBS += $$PWD/lib/vs2022_x64/debug/libprotobufd.lib
    15. LIBS += $$PWD/lib/vs2022_x64/debug/libprotobuf-lited.lib
    16. LIBS += $$PWD/lib/vs2022_x64/debug/libprotocd.lib
    17. }else{
    18. LIBS += $$PWD/lib/vs2022_x64/release/libprotobuf.lib
    19. LIBS += $$PWD/lib/vs2022_x64/release/libprotobuf-lite.lib
    20. LIBS += $$PWD/lib/vs2022_x64/release/libprotoc.lib
    21. }
    22. }else{
    23. message("32-bit")
    24. CONFIG(debug, debug|release){
    25. LIBS += $$PWD/lib/vs2022_x86/debug/libprotobufd.lib
    26. LIBS += $$PWD/lib/vs2022_x86/debug/libprotobuf-lited.lib
    27. LIBS += $$PWD/lib/vs2022_x86/debug/libprotocd.lib
    28. }else{
    29. LIBS += $$PWD/lib/vs2022_x86/release/libprotobuf.lib
    30. LIBS += $$PWD/lib/vs2022_x86/release/libprotobuf-lite.lib
    31. LIBS += $$PWD/lib/vs2022_x86/release/libprotoc.lib
    32. }
    33. }

  • 相关阅读:
    使用ChatGPT创建Makefile构建系统:使用Make运行Docker
    【附源码】Python计算机毕业设计图书销售管理系统
    win10添加回环网卡步骤
    王府街10号院团建笔记
    golang常用包
    tap栏切换
    Markdown 教程之如何在 Markdown 文档中添加流程图、方程式和交互式图形
    LaTeX 删除证明结束符小方框
    【CCF】Z字形扫描
    Spring和Spring Boot的区别
  • 原文地址:https://blog.csdn.net/HUANG_XIAOJUN/article/details/133356306