这是我在文件skener.y中的代码
%{
#include <stdio.h>
%}
%token T_Int
%%
exp: T_Int { $$ = $1; }
| exp exp '+' { $$ = $1 + $2; }
| exp exp '-' { $$ = $1 - $2; }
| exp exp '*' { $$ = $1 * $2; }
| exp exp '/' { $$ = $1 / $2; }
;
%%
当我使用命令“bison -d skener.y”编译它时,我收到错误“m4:没有这样的文件或目录。”。当然,在提示符下键入命令时,我位于工作文件夹中。我不知道它是什么?
答案 0 :(得分:4)
bison.exe文件中似乎有一些错误。 我将其替换为此zip文件中的一个。 http://marin.jb.free.fr/bison/bison-2.4.1-modified.zip
答案 1 :(得分:1)
我在Windows 7 PC上通过他们的Setup.exe安装了GnuWin32 version of bison时出现了同样的错误。解决方案是将...\GnuWin32\bin
目录添加到我的PATH中。 (有趣的是,这是很多人在第一次使用时遇到问题的第一个工具)
答案 2 :(得分:1)
路径中任何文件夹的名称中都不应有空格。就我而言,我将其保存在C:/ Program Files / GnuWin32 / bin中,并导致了错误。然后,我将文件夹从“程序文件”中移出,并放置为C:/ GnuWin32 / bin,它开始正常工作。
答案 3 :(得分:0)
这意味着您没有正确安装野牛 - 您有可执行文件,但它缺少其支持文件。
返回并重新安装野牛。
答案 4 :(得分:0)