bison版本问题导致编译报错:‘parse.error‘ is not used
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相关推荐
- 关于 Visual stdio 编译报错:error MSB6006: “CL.exe”已退出
网上查看,原因有多种. 我自己遇到的是这样的: 环境:VS2019,编译项目 image-master,中间自己重整了原来的目录,移动了很多文件.编译报错:error MSB6006: "C ...
- 【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 ...
- 编译报错:error: ro.build.fingerprint cannot exceed 91 bytes
编译报错:error: ro.build.fingerprint cannot exceed 91 bytes Notice file: system/core/libzipfile/NOTICE - ...
- 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 ...
- C++ STL编译报错:error: error passing 'const' as 'this' argument
用C++ STL(标准模板库)编写仿函数的时候,编译报错: error: passing 'const FindNameOrAddress' as 'this' argument of 'bool F ...
- poi版本冲突导致连续报错NoSuchMethodError、VerticalAlignment无法转换为short和ClassNotFoundException的解决办法及兼容性问题解决
项目场景: 在一个线上业务中,涉及到excel转pdf的相关操作,使用了poi库,但是一次运维中发现该功能产生了错误的结果,生成的pdf文件为空.报错信息为Caused by: java.lang.N ...
- php baocuo error,PHP编译报错configure: error: Cannot find libmysqlclient under /usr.
今天编译PHP的时候遇到了几个错误,记录一下 第一次编译的时候报错如下: configure: error: mcrypt.h not found. Please reinstall libmcryp ...
- STM8L151的IAR工程编译报错Fatal Error[Pe035]: #error directive: “Please select first the target STM8L...
项目场景: STM8L151G4XX单片机IAR工程编译报错. 问题描述 编译报错:Fatal Error[Pe035]: #error directive: "Please select ...
- kylin系统gcc编译报错fatal error:stadio.h: 没有那个文件或目录解决办法
在进行内存容量极限测试时,出现编译报错如下: $sudo gcc eat-memory.c -o eat-memory eat-memory.c:1:10: fatal error: stdio.h: ...
最新文章
- 6万广州人坐过无人出租车,过半月薪一万以上 | 中国首份Robotaxi乘客调研报告...
- python def return 文件_python基础-文件处理与函数
- Hangfire项目实践分享
- 递归调用方法时栈内存是如何变化的?(使用内存图演示递归调用过程)
- 一文教你学会需求分析与管理
- 如何从0开发一个Atom组件
- linux下的hosts文件
- 比较3个购书网站,china-pub,dangdang,joyo(amazon)
- 互联网信息安全与加密技术
- 泪目!java面试八股文是哪些
- 一加手机高德位置服务器,高德地图在线导航悬浮窗闪亮一加手机
- Wise Force Deleter(电脑文件强制删除软件)官方中文版V1.5.3.54 | 支持强制删除超大文件夹
- linux基础教程之在Linux上安装Go语言开发包
- 传递函数的幅频特性计算方法
- plt如何随心所欲的更改x轴坐标
- 曾国藩不间断读书做笔记 读书十年始展拳脚
- 学习matlab(七)——符号计算
- CF #768 E.Flipping Ring
- excel和matlab交互,Excel与Matlab的数据交互(精选5篇)
- class torch.optim.lr_scheduler.LambdaLR