VS2022解决Protobuf compiler version 23.4 doesn‘t match library version 4.23.4

2023-10-27

在使用Visual Studio 2022+MinGW+CMake作为开发环境时,如果项目中使用了Protobuf,则在CMake运行时,可能会出现Protobuf compiler version 23.4 doesn't match library version 4.23.4的问题:

1> [CMake] CMake Warning at C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.26/Modules/FindProtobuf.cmake:524 (message):
1> [CMake]   Protobuf compiler version 23.4 doesn't match library version 4.23.4

可以看到目前VS2022 17.7.1下,CMake的版本还是3.26,而最新版本3.27已经出来了,且MinGW已经是3.27版本了。VS中CMake的FindProtobuf.cmake模块对Protobuf版本号的查找方式仅适用于Protobuf 22之前的版本,Protobuf 22之后protoc不再输出主版本号了。

在这里插入图片描述

protoc --version
libprotoc 23.4

没有主版本号4,实际版本号为4.23.4。

只需要把msys64\mingw64\share\cmake\Modules\FindProtobuf.cmake复制到C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.26/Modules/目录下,覆盖FindProtobuf.cmake即可。

另外,在MinGW下使用新版本的Protobuf,还需要链接一系列absl库,最基础的是需要链接absl_log_internal_messageabsl_log_internal_check_op

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

VS2022解决Protobuf compiler version 23.4 doesn‘t match library version 4.23.4 的相关文章

  • 免费的 C 语言 IDE? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 谷歌搜索 c ide C 会产生太多 C 结果以及不相关的结果 这些搜索词似乎太短 无法产生相关结果 有人有免费的 Win32 C IDE
  • 设置 xamarin studio 以与 PCL 和 MVVMCross 配合使用

    我真的很喜欢 Xamarin Studio 并且正在寻找一个模板解决方案来开始使用 MvvmCross 开发跨设备应用程序 但我找不到如何将项目设置为与 Xamarin Studio 一起使用 PCL 和 MvvmCross 如果有人能给我
  • 有没有办法在 JetBrains“运行配置”中仅运行“外部工具”

    JetBrains IDE 中的所有 或几乎所有 运行配置 都提供了一个选项来运行 外部工具 作为其执行的一部分 有没有办法only在运行配置中运行外部工具 不知道为什么你需要它 我可以建议尝试 Bash 支持插件 http plugins
  • IntelliJ Idea 15 显示依赖包和项目包

    IntelliJ Idea 15 CE 在项目的包视图中显示来自库 依赖项的包 仅当项目的根包与某些依赖项的根包相同时才会发生这种情况 对于前 我的项目的根包是org 所以所有的依赖关系也有org包状org apache logging也被
  • android studio 和 android SDK 捆绑的 eclipse 版本有什么区别

    我没有 Android 开发经验 我想开始编写应用程序 The 官方开发者工具页面 http developer android com tools index html包含两个不同 IDE 的链接 第一个包含捆绑的 ADT 版本Eclip
  • 安装 Sass 时出错(Ruby 2.5.0.1、MSYS2 20161025.0.0)

    我尝试安装 Sass 我安装了Ruby and MSYS2在此之前 来自所有人的最新消息巧克力味 https chocolatey org choco install ruby choco install msys2 看来它们已正确安装 r
  • 在 Eclipse 中突出显示修改的行

    在 netbeans 中 如果我打开一个受版本控制的文件 则修改的行会在左侧突出显示 绿色表示新行 蓝色表示修改行 在Eclipse中是否可以得到类似的效果 打开首选项窗口 搜索 差异 选择快速差异 将 使用此参考源 更改为 SCM 提供程
  • 设置 Emacs 进行 Erlang 编程

    Emacs 是 Erlang 编程的首选 IDE 有很多好的模式 distel erlware mode 默认的 erlang 模式 但是您对设置 Emacs 进行专业 Erlang 开发有何建议 按照中所述设置 erlang mode自述
  • 双屏 Android Studio 中不显示自动补全

    我刚刚从 Eclipse 切换到 Android Studio IntelliJ 我不明白自动补全是如何工作的 我尝试了 Control Space Control Shift Space 但没有相关建议 不在 Java 文件中 也不在布局
  • Selenium IDE-自动化Select2搜索框

    我正在尝试自动化 selenium IDE 中的 select2 搜索框 我打开它并输入了我正在搜索的搜索关键字 但是 即使我有用于显示结果的代码 它也不起作用 问题是我猜字符输入得太快 因此结果不会显示在搜索框中 我确信我在某个地方出错了
  • Spyder 未检测到导入的 python 文件中的更改

    我正在使用 Spyder 3 2 4 Python 3 6 Spyder 不会检测导入的 python 文件中的更改 例如 测试2 py def func return 5 测试1 py import test2 a test2 func
  • Netbeans 自动完成功能停止工作?

    我使用的是 Netbeans 6 9 1 一切都很好 但是突然间 它停止检测对代码所做的任何更改 例如新变量 函数等 如果我尝试重构 重命名变量 例如按 CTRL R 它说 重构在此上下文中不可用 如果重要的话 它在 PHP 项目中 有任何
  • 是否有一个“轻型版本”IntelliJ IDEA 可以在没有项目的情况下编辑文件?

    可以从命令行在单个文件上调用 IntelliJ IDEA 如此处所述 将 IntelliJ IDEA 作为 Diff 或合并命令行工具运行 https www jetbrains com help idea running intellij
  • Eclipse:对 Java 1.7 的失望(未绑定库)

    我在全新安装的 Eclipse 中处理全新项目时遇到问题 重现步骤 下载此版本的 Eclipse http www eclipse org downloads packages eclipse ide java developers hel
  • 如何在 Windows 7+ 和 MSYS2 上的 GTK3 上获取本机 Windows 装饰

    我正在尝试将我的应用程序从 Linux 移植到 Windows 但我遇到主题设置问题 在 Linux 中 这是开箱即用的 只需编译它 应用程序就会使用良好的主题并且看起来很原生 我已经在 MSYS2 中安装了 gtkmm3 和 gtk3 并
  • 如何在 msys2/mintty 中配置默认​​ shell?

    我最近更新了 msys2 发现 mintty 在调用之前总是显示 Shells bash 对话框 每次点击按钮有点烦人 如何通过修复默认 shell 来抑制此对话框 薄荷版本是mintty 2 7 7 x86 64 pc msys 尝试安装
  • IntelliJ IDEA - 分离编辑器窗口

    我最近从我的 IntelliJ 设置中删除了选项卡 因为有了可用于在文件之间导航的所有功能 谁需要它们 问题是 分离编辑器窗口的正常方法是将选项卡拖动到另一个屏幕 或区域 上 键映射中似乎没有任何用于分离编辑器窗口的内容 有没有办法通过键盘
  • 如何折叠 C# 中的所有 #region 和方法?

    全部一一崩掉真是太烦人了 Like Steve said CTRL M plus CTRL L for collapsing all regions recursively This one is a toggle meaning you
  • 如何成功使用 VIM 作为 Code::Blocks 的外部编辑器?

    我真的很喜欢 Code Blocks 的构建系统和单步调试能力 也就是说 我真的很喜欢使用 gcc gdb 的包装器 而不是从 Makefile 或命令行使用它们 问题是 多年来使用 VIM 使我的大脑受到了严重损伤 或者有些人可能会说被宠
  • 为什么 Git Bash 无法运行我的可执行文件?

    I am on git for windows https github com git for windows 吉特 巴什 我无法在命令行上运行可执行文件 Pedr Abc 07 MINGW64 c dev ls sqlite3 exe

随机推荐

  • 解决:selenium.common.exceptions.WebDriverException: Message: 'chromedriver' execu

    在准备写个脚本去爬取网易云歌曲信息时 用selenium去戳 这里采用的是chrome浏览器 链接网页时报错 File C Python37 lib site packages selenium webdriver chrome webdr
  • python日志文件

    version 1 disable existing loggers False root level ERROR handlers console propagate False loggers infoFileLogger level
  • windows任务计划程序拒绝访问

    问题现象 在windows任务计划程序中添加脚本程序 执行相应脚本 报了拒绝访问和创建目录需要输入参数问题 问题分析 没有权限执行脚本 问题解决 除了填写相应位置的脚本之外 还需要填写起始于的脚本所在路径
  • Qt系列文章之 Qt Model Class

    Qt Model Class Qt提供了一些列相互继承的Model类体系 Qt的Model类是对用户数据进行体系化封装并提供统一操作接口的一大类模块 Qt提供的模型类十分多 大致可以分为三种 不可实例化的抽象基类 代理模型类和可实例化模型类
  • 【Python习题集5】函数的设计

    函数的设计 一 实验内容 二 实验总结 一 实验内容 1 编写两个函数分别按单利和复利计算利息 根据本金 年利率 存款年限得到本息和和利息 调用这两个函数计算1000元在银行存3年 在年利率是6 的情况下 单利和复利分别获得的本息和和利息
  • 首次使用阿里云云效拉取代码

    首先 需要公司给权限 把你加入公司项目团队 其次 使用公司给的阿里云账号 密码去登录 登录https codeup aliyun com 通过公司人员给开的权限点击加入团队 使用RAM用户登录 输入阿里云账号 点击下一步3 输入阿里云密码
  • Unity与VisualStudio关联配置

    默认已经正确安装UnityHub和VisualStudio 本文环境为Unity2020 3 4f1c1 和 VisualStudio2019 简略 VisualStudio安装VisualStudio Tools for Unity Un
  • jquery 页面刷新

    页面加载时绑定按钮点击事件 function 按钮id click function refresh 点击按钮调用的方法 function refresh window location reload 刷新当前页面 或者下方刷新方法 par
  • SpringBoot——加载测试专用属性

    简单介绍 在之前的时候我们使用过配置文件添加配置 使用过IDEA添加属性配置 使用过命令行添加临时属性配置 在测试中 也可以设置专用于测试的临时配置属性 使用方法 首先打开SpringBoot中默认创建好的测试类 打开之后会在主类上看到一个
  • 微信公众号+Vue+JS-SDK配置注册失败,显示config:fail,Error: 系统错误,错误码:63002,invalid signature等解决方法

    用vue做微信公众号调用js sdk遇到的问题 问题1 JS SDK在IOS中报签名无效invalid signature 解决办法 在VUE路由进去你要操作的页面时进行config接口注入 首先打开工程文件中的router index j
  • Vue计算属性与侦听属性的应用场景

    计算属性中不能进行异步操作 在计算属性中我们不能进行异步操作 例如 不能使用定时器 不能处理 Ajax 请求 div 姓 div
  • 史上最全计算机毕业设计题目1(10万套,大部分全国唯一)

    最新vc图书管理系统 任务书 开题 论文 源码 后缀2a附选题表 rar 最新指纹识别系统 任务书 开题 论文 源码 后缀2b附选题表 rar 原创java图书管理系统 任务书 论文 后缀2b附选题表 rar 原创毕业设计网上选题系统 任务
  • Android开发中常见的内存泄漏情况和解决办法

    什么是内存泄漏 答 在Android程序开发中 当一个对象已经不需要再使用了 本该被回收时 而另外一个正在使用的对象持有它的引用从而导致它不能被回收 这就导致本该被回收的对象不能被回收而停留在堆内存中 内存泄漏就产生了 内存泄漏的危害 答
  • 最大类间方差法(大津法OTSU)

    算法介绍 最大类间方差法是1979年由日本学者大津提出的 是一种自适应阈值确定的方法 又叫大津法 简称OTSU 是一种基于全局的二值化算法 它是根据图像的灰度特性 将图像分为前景和背景两个部分 当取最佳阈值时 两部分之间的差别应该是最大的
  • jdbc驱动和mysql版本的对应关系引起的Could not create connection to database server

    前言 之前在docker上部署项目时发现个问题 在本地运行时一切正常 打包部署到docker上的tomcat时一直报错无法连接数据库 期初认为是数据库远程权限的问题 各种方法试了都不管用 后来搜索过程中看到有帖子说可能是jdbc版本和mys
  • PCB走线到底能承载多大电流

    想必刚入行硬件设计领域的小白 一定存在过这种困惑 即电流与PCB走线宽度的关系 不仅小白想知道这种关系 就连有些工作多年的老司机有时也存在一定的困惑 在设置线宽时 往往是根据经验来选择 然而当电流稍作大幅度的变化 对于线宽就很难拿捏住了 在
  • 图像增强小程序——Img+

    文章目录 前言 软件 1 界面 2 软件 前言 最近闲来无事 用PyQt5写了一个图像增强查看器 可以实时查看图像增强结果 集成了常用的图像增强方式 包括反转 平移 旋转 缩放 裁剪加噪声 亮度 饱和度 颜色反转 直方图均衡 色彩平衡 Cu
  • Android组件化方案

    1为什么要项目组件化 2如何组件化 3组件化实施流程 1组件模式和集成模式的转换 2组件之间AndroidManifest合并问题 3全局Context的获取及组件数据初始化 4library依赖问题 5组件之间调用和通信 6组件之间资源名
  • socket编程出现errno:【10061】

    出现Errno10061 是因为目标主机主动拒绝 连接不能建立 这通常是因为试图连接到一个远程主机上不活动的服务 如没有服务器应用程序处于执行状态 解决方法 1 你先启动server 看是否可以正常启动 2 因为是基于TCP的 所以你试试t
  • VS2022解决Protobuf compiler version 23.4 doesn‘t match library version 4.23.4

    在使用Visual Studio 2022 MinGW CMake作为开发环境时 如果项目中使用了Protobuf 则在CMake运行时 可能会出现Protobuf compiler version 23 4 doesn t match l