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