157得票5回答
Antlr的优势(与lex/yacc/bison相比)

我过去在各种项目中使用了lex和yacc(通常更常用的是bison),通常是用于翻译器(例如将EDIF子集流式传输到EDA应用程序中)。此外,我不得不支持基于lex/yacc语法几十年前编写的代码。因此我知道这些工具的使用方法,但并不是专家。 我曾经在各个论坛中看到过关于Antlr的积极评论...

141得票5回答
Flex/Lex和Yacc/Bison有什么区别?

什么是Flex和Lex以及Yacc和Bison的区别?我搜索了互联网,但没有找到任何确定的答案。 我能在Ubuntu上安装纯Lex和Yacc吗,还是只能安装flex和bison?我很困惑。 - Lex或Yacc是否仍由某人维护? - 它们都是免费的吗? - 如果Lex不是免费的,为什么我在...

90得票4回答
在8位嵌入式系统上编写像Flex/Bison一样可用的解析器

我正在使用avr-gcc工具链,用C语言在AVR微控制器上作为练习编写一个类似BASIC的小型解释器。如果我要在Linux上运行该程序,我可以使用flex/bison。既然我限定了自己使用8位平台,那我应该如何编写解析器呢?

79得票2回答
调用std::max函数时出现问题

我在Visual Studio中编译我的bison生成文件,出现了以下错误: ...\position.hh(83): error C2589: '(' : '::' 右侧的非法标记 ...\position.hh(83): error C2059: 语法错误:'::' ......

66得票9回答
如何在Windows上编译LEX/YACC文件?

我正在使用Lex和YACC文件来解析我的文件(.l文件和.y文件)。 如何在Windows平台上编译这些文件,并生成相应的.c文件?

61得票8回答
将字符串输入转换为Flex词法分析器

我想使用flex/bison解析器创建一个read-eval-print循环。问题是,由flex生成的词法分析器需要FILE*类型的输入,而我想要传入char*类型的输入。有没有什么方法可以实现这一点? 有人建议创建一个管道,将字符串输入进去,然后打开文件描述符并发送给词法分析器。这个方法相...

54得票2回答
如何解决Bison警告“...没有声明类型”的问题

在此文件上运行Bison:%{ #include <iostream> int yylex(); void yyerror(const char*); %} %union { char name[100]; int val;...

48得票5回答
如何在macOS上安装Bison

我正在尝试在我的MacBook上安装Thrift。 否则,我会收到以下错误: configure: 错误: 系统必须安装Bison版本2.5或更高版本! 所以我尝试在我的操作系统上安装Bison,但是我没有在互联网上找到教程。 有人能告诉我如何在我的系统上安装Bison吗? 谢谢。

36得票3回答
编译gcc 4.6时出现问题:undefined reference to `yylex'。

我正在尝试构建gcc 4.6,但是我遇到了一些链接器错误,看起来好像是bison或flex没有被链接。当makefile发出这个命令时:gcc -g -fkeep-inline-functions -DIN_GCC -W -Wall -Wwrite-strings -Wcast-qua...

32得票4回答
将Bison/Flex/Yacc集成到XCode中

有没有一种简单的方法将Bison/Flex/Yacc集成到XCode中? 我想编写自己的语言,以便与我的ObjC对象进行交互。 但是这些工具只能将STDIN作为输入,并且只能生成C代码,而不是ObjC。它们基本上只对命令行工具有用,否则每次重新生成解析器代码时都需要大量的麻烦来覆盖输出。