windows下yacc和lex开发环境配置(Parser Generator篇)

1.下载安装
Parser Generator是Windows下YACC和LEX的实现,是由英国Bumble-Bee Software公司开发.
下载地址http://www.bumblebeesoftware.com/downloads.htm.
安装软件之后,设置系统环境变量path,在path属性中添加安装bin目录;以我的安装为例,在以前的path属性后添加;D:/Program Files/Parser Generator 2/Bin
在控制台命令窗口中输入alex,ayacc,检验是否能找到这两个命令.如果找不到,那么肯定是环境变量设置有误.
2.vc.net配置
下面我以vc.net为例,进行配置说明.
1)打开vc.net程序,打开菜单"工具"=>"选项",打开"选项"对话框.
2)在选项对话框左边选择"Projects"=>"VC++ 目录"
   在"显示以下内容的目录(S)"下拉列表中选择"可执行文件",在下面的目录列表中添加一行"D:/Program Files/Parser Generator 2/Bin"
  在"显示以下内容的目录(S)"下拉列表中选择"包含文件",在下面的目录列表中添加一行"D:/Program Files/Parser Generator 2/Cpp/Include"
  在"显示以下内容的目录(S)"下拉列表中选择"库文件",在下面的目录列表中添加一行"D:/Program Files/Parser Generator 2/Cpp/Lib/msvc32"
  在"显示以下内容的目录(S)"下拉列表中选择"源文件",在下面的目录列表中添加一行"D:/Program Files/Parser Generator 2/Cpp/Source"
3.示例
用vc.net创建一个控制台项目
选中项目,在右键菜单中选择"属性",或者选择菜单"项目"=>"属性",打开项目属性对话框.
1)在左边选择"属性配置"=>"C/C++"=>"预处理",在右边列表中,"预处理器定义"行中添加一个YYDEBUG宏定义,用;号通别的宏定义分隔开来.
2)在左边选择"属性配置"=>"连接器"=>"输入",在右边列表中,"附加依赖项"中添加yld.lib或者ylmtrid.lib   (ylmtrid.lib  是多线程,yld.lib 是单线程)
3)从D:/Program Files/Parser Generator 2/Cpp/Examples/calc目录中拷贝calc.y文件到项目目录,开代控制台,进入项目calc.y所在目录,执行命令ayacc calc.y,如果成功,你会看到在同样的目录中,有一个calc.c文件生成.将calc.c添加到项目中,然后编译,生成可执行程序. 
4)配置编译选项,自动转换.y.l文件
  在工程中选择.y文件,右键菜单=>"属性"打开属性对话框,在属性对话框中选择"自定义生成步骤",在右边"命令行"中输入ayacc calc.y,在"输出"中输入calc.c;这样在编译工程的时候,就可以根据calc.y文件自动生成calc.c文件,.l文件的生成配置办法类似.
4.结束
我按照上面步骤成功生成了程序,没有出现任何错误.vc6.0的配置类似.如有不对的地方,欢迎指正.
另外可以采用CygWin,看文章http://hi.baidu.com/momoca/blog/item/f6010cd7dbdb00dea044df51.html
也可以采用minGw,看文章http://hi.baidu.com/dadandachan/blog/item/449d802f0ff9b1381e3089b0.html
flex,bison的下载地址http://www.monmouth.com/~wstreett/lex-yacc/lex-yacc.html
CygWin和minGw在这儿就不再举实例了,大家可以参考上面的文章,其实也是工具而已.
yacc&lex英文资料http://www.cs.man.ac.uk/~pjj/cs2111/ 
http://epaperpress.com/lexandyacc/ 
http://yaxx.sourceforge.net

猜你喜欢

转载自blog.csdn.net/p312011150/article/details/83961786