While running a makefile in gcc 4.1.2 (linux 5), I got the following error
make: yacc: Command not found
By googling, I came to know that this error can be rectified by installing Bison-GNU parser generator. But even after installing Bison, I get the same error.
How can this error be solved?
From the looks of things, your makefile is expecting a
yacc
executable to be available and either it's not, or it's not on your path.Since
bison
is supposed to be compatible withyacc
so the first thing I would try would be:and try again. On my setup,
/usr/bin/yacc
is simply a script containing:You can try to locate the
yacc
orbison
executables with the command (substituting bison for yacc if need be):But they're probably in one of the standard places like
/bin
or/usr/bin
.I ran into a similar issue on RHEL7.
Find where bison is:
Create symlink to bison from yacc:
And that should solve the problem.
I created the alias file on my Ubuntu 16 system, while testing then I found that bison was missing so I installed bison which gave me an error about the link that I had made for /usr/bin/yacc, so the bison install creates the lnk file itself for yacc on Ubuntu 16.
Run the following command on your terminal to install bison, yacc executables and configurations.yacc comes along with bison
Also you need byacc for a full functional yacc
It worked for me.