Linux如何安装Lex和YACC
2023-05-08 本文已影响0人
CodingCode
- 问题描述
$ lex
-bash: lex: command not found
$ yaccc
-bash: yacc: command not found
- 安装lex
$ sudo yum install flex
- 安装yacc
很多情况下都是安装的bison来代替yacc,所以
$ sudo yum install bison
安装完后运行bison即可。
那么源代码里使用了yacc怎么办呢,可以做一个alias:
$ alias yacc="bison"
因为bison号称是兼容yacc的,但其实有例外,例如下面的问题我们就会碰到:
File y.tab.c not found.
因为bison不生成y.tab.c,必须带上"-y"参数。
$ yacc -d XXX.y
$ bison -yd XXX.y
- 当然也可以显式的安装yacc:
$ sudo yum install byacc
首字母b指的是”Berkeley”,即"Berkeley Yacc, a parser generator“。