安装Bison后“make:yacc:Command not found”

时间:2012-05-24 07:44:44

标签: bison yacc

在gcc 4.1.2(linux 5)中运行makefile时,出现以下错误

make: yacc: Command not found

通过谷歌搜索,我发现安装Bison-GNU解析器生成器可以纠正这个错误。 但即使在安装Bison之后,我也会遇到同样的错误。

如何解决这个错误?

4 个答案:

答案 0 :(得分:15)

在终端上运行以下命令以安装bison, yacc 可执行文件和配置。 yacc 带有野牛

您还需要 byacc 才能获得完整功能 yacc

sudo apt-get install bison -y
sudo apt-get install byacc -y

它对我有用。

答案 1 :(得分:9)

从外观上看,你的makefile期望yacc可执行文件可用,或者不是,或者它不在你的路径上。

由于bison应该与yacc兼容,所以我要尝试的第一件事就是:

alias yacc="bison"

然后再试一次。在我的设置中,/usr/bin/yacc只是一个包含以下内容的脚本:

#! /bin/sh
exec '/usr/bin/bison' -y "$@"

您可以尝试使用命令找到yaccbison可执行文件(如果需要,用bison代替yacc):

which yacc

但它们可能位于/bin/usr/bin等标准位置之一。

答案 2 :(得分:0)

我在RHEL7上遇到了类似的问题。

查找野牛的位置:

simple_small_function

从yacc创建符号链接到bison:

$:which bison

*/bin/bison*

这应该可以解决问题。

答案 3 :(得分:0)

我在我的Ubuntu 16系统上创建了别名文件,然后测试然后我发现野牛丢失了所以我安装了bison,这给了我一个关于我为/ usr / bin / yacc做的链接的错误,所以野牛install在Ubuntu 16上为yacc创建lnk文件。