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. CSS Modules
  2. 电子合同的履行_什么是电子合同履行?怎么履行电子合同?
  3. python实现反转链表讲解_基于Python实现2种反转链表方法代码实例
  4. python虚拟环境的作用_python虚拟环境搭建
  5. Python Model : glob 文件路径查找
  6. identifier of an instance of was altered from to n
  7. html5手机网站照片查看器,HTMLayout仿Picasa照片查看器效果
  8. DNN 4.x CodeSmith模板
  9. 网络安全隐性杀手:三类危险的TXT文件
  10. 计算机系统结构 期末复习
  11. 一款问答APP的产品需求文档(PRD)
  12. linux 获取命令行返回的数据_Linux | 活用CLI命令行进行数据处理与探索
  13. 计算机创造奇迹英语作文,高中英语作文模板 第274期:Creating Miracle 创造奇迹
  14. ReportViewer教程(14)-钻取报表和传入参数
  15. 两个网段在同一个交换机_告诉你PC不能通过二层交换机实现跨网段通信的小秘密:你很难想到...
  16. 20145227《Java程序设计》第10周学习总结
  17. 进销存excel_EXCEL也能连接扫码枪?商品扫码入库,免费进销存自由修改功能
  18. 2021年电赛仪器仪表类重难点
  19. linux 显示数字权限,Linux数字权限解释
  20. wed基础和http

热门文章

  1. 算法进化历程之剪刀石头布
  2. 作为技术分析工具的 MTF 指标
  3. 夏季来临,警惕蜱虫叮咬感染疾病——莱姆病
  4. 基于微信小程序的RSS订阅器
  5. 算法实验总结2019
  6. 计算机专业的学生答辩稿,计算机专业毕业论文答辩自述稿范文
  7. 手游代理行业,现在还有机会吗?
  8. 20162316刘诚昊 第六周作业报告
  9. 66岁比尔盖茨离婚!西雅图并不相信爱情~
  10. java 流式FlowLayout布局换行方法