bison版本问题导致编译报错:'parse.error' is not used

  • 'parse.error' 问题定位和修正
    • 问题发现
    • 问题调查与定位
    • 更新bison/flex版本
    • 问题修正
    • 一些参考文章

‘parse.error’ 问题定位和修正

由于工作需要编译QGIS3.10源码,使用原3.4版本的配置编译时出现: ‘parse.error’ is not used 报错。通过调查后确认是bison/flex版本偏低,更新bison/flex版本后修正此问题。

问题发现

在用VS2017编译QGIS3.10代码时,qgis_core模块报错:
error: %define variable ‘parse.error’ is not used ,如下图:

通过查看qgis_core.vcxproj文件,确定是在用bison生成代码时报错,如下图:

问题调查与定位

此版本QGIS源码同事已经编译完成,通过与同事交流和对比qgis3.4与3.10,两个版本代码,发现报错处代码发生了变化,应该是版本升级导致了兼容性问题

bison版本对比

更新bison/flex版本

更新了bison和flex版本后,代码可以正常编译.
为便于后来人,现将3.3.2版本bison及对应flex上传,供下载更新
链接: biosn3.3.2_flex2.6.

问题修正

更新bison版本后 qgis_core编译通过,其它模块后续也编译完成!

一些参考文章

对于bison和flex介绍,大家可以参阅以下链接
GNU bison
flex 词法分析器生成工具
Bison介绍

bison版本问题导致编译报错:‘parse.error‘ is not used相关推荐

  1. 关于 Visual stdio 编译报错:error MSB6006: “CL.exe”已退出

    网上查看,原因有多种. 我自己遇到的是这样的: 环境:VS2019,编译项目 image-master,中间自己重整了原来的目录,移动了很多文件.编译报错:error MSB6006: "C ...

  2. 【c语言 gcc9.1.0环境下编译报错】error: ‘true’ undeclared (first use in this function)

    问题 网上验证一个单链表是否有环的c语言demo,放到gcc9.1.0的环境下编译,发现编译报错: error: 'true' undeclared (first use in this functi ...

  3. 编译报错:error: ro.build.fingerprint cannot exceed 91 bytes

    编译报错:error: ro.build.fingerprint cannot exceed 91 bytes Notice file: system/core/libzipfile/NOTICE - ...

  4. idea编译报错:Error:Kotlin: Module was compiled with an incompatible version of Kotlin.

    1. idea 编译报错信息 Error:Kotlin: Module was compiled with an incompatible version of Kotlin. The binary ...

  5. C++ STL编译报错:error: error passing 'const' as 'this' argument

    用C++ STL(标准模板库)编写仿函数的时候,编译报错: error: passing 'const FindNameOrAddress' as 'this' argument of 'bool F ...

  6. poi版本冲突导致连续报错NoSuchMethodError、VerticalAlignment无法转换为short和ClassNotFoundException的解决办法及兼容性问题解决

    项目场景: 在一个线上业务中,涉及到excel转pdf的相关操作,使用了poi库,但是一次运维中发现该功能产生了错误的结果,生成的pdf文件为空.报错信息为Caused by: java.lang.N ...

  7. php baocuo error,PHP编译报错configure: error: Cannot find libmysqlclient under /usr.

    今天编译PHP的时候遇到了几个错误,记录一下 第一次编译的时候报错如下: configure: error: mcrypt.h not found. Please reinstall libmcryp ...

  8. STM8L151的IAR工程编译报错Fatal Error[Pe035]: #error directive: “Please select first the target STM8L...

    项目场景: STM8L151G4XX单片机IAR工程编译报错. 问题描述 编译报错:Fatal Error[Pe035]: #error directive: "Please select ...

  9. kylin系统gcc编译报错fatal error:stadio.h: 没有那个文件或目录解决办法

    在进行内存容量极限测试时,出现编译报错如下: $sudo gcc eat-memory.c -o eat-memory eat-memory.c:1:10: fatal error: stdio.h: ...

最新文章

  1. 6万广州人坐过无人出租车,过半月薪一万以上 | 中国首份Robotaxi乘客调研报告...
  2. python def return 文件_python基础-文件处理与函数
  3. Hangfire项目实践分享
  4. 递归调用方法时栈内存是如何变化的?(使用内存图演示递归调用过程)
  5. 一文教你学会需求分析与管理
  6. 如何从0开发一个Atom组件
  7. linux下的hosts文件
  8. 比较3个购书网站,china-pub,dangdang,joyo(amazon)
  9. 互联网信息安全与加密技术
  10. 泪目!java面试八股文是哪些
  11. 一加手机高德位置服务器,高德地图在线导航悬浮窗闪亮一加手机
  12. Wise Force Deleter(电脑文件强制删除软件)官方中文版V1.5.3.54 | 支持强制删除超大文件夹
  13. linux基础教程之在Linux上安装Go语言开发包
  14. 传递函数的幅频特性计算方法
  15. plt如何随心所欲的更改x轴坐标
  16. 曾国藩不间断读书做笔记 读书十年始展拳脚
  17. 学习matlab(七)——符号计算
  18. CF #768 E.Flipping Ring
  19. excel和matlab交互,Excel与Matlab的数据交互(精选5篇)
  20. class torch.optim.lr_scheduler.LambdaLR

热门文章

  1. 【python】re解析和re模块
  2. java专区软件_分享几款让你事半功倍的装机必备软件
  3. MongoDB——MongoDB的日常维护
  4. c语言常见错误分析和程序调试,C语言中常见错误分析及程序调试
  5. C++中cout的格式使用
  6. 生活指南:IT人士健康生活应多吃的几种食物
  7. 一个关于农历的算法----js实现【转】
  8. 关于消息推送服务的十问十答
  9. BIM模型导入SuperMap
  10. 【论文阅读 Journal of Financial Economics】Surprise election for Trump connections