parser generator的使用方法
这里只以vc6.0为例,首先打开parser generator编辑器,选择Project->LibBuilder 在LibBuilder对话框中选中Visual C++(32-bit),按属性键Properties后确以下设置 Script file name .\Cpp\Script\msvc32.lbs Name Visual C++(32-bit) Directory msvc32 Compiler Version Version 6 Unicode True Treat wchar_t as Built-in Type False Compiler Bin Directory 安装路径\Microsoft Visual Studio\Vc98\bin Compiler Bin Directory(2) 安装路径\Microsoft Visual Studio\Common\MSDev98\bin Compiler Include Directory 安装路径\Microsoft Visual Studio\Vc98\include Compiler Include Directory(2) 无 Compiler Library Directory 安装路径\Microsoft Visual Studio\Vc98\lib Compiler Library Directory(2) 无 Libraries下的库文件全部选中后ok LibBuilder对话框->Build(编译过程可能几分钟) 编译完成后我们就可以使用parser generator编写lex或是yacc程序了 Project->ParserWizard Step1 工程设定(一点需要注意语言可以选择c或是c++或java) Step2 工程设定(默认创建带main函数的yacc文件和lex文件) Step3 yacc文件设定 Step4 lex文件设定 Lex和yacc的语法参考http://www.ibm.com/developerworks/cn/linux/sdk/lex/ 编辑好代码后Project->RebBuild All在你创建好的工程下自动生成Step1选定语言的文件(.h/..c/.cpp/.java) 之后在vc6.0加入如下设置 Tool->Option-> directory Bin file : 安装目录\PARSER GENERATOR 2\BIN Include file: 安装目录\PARSER GENERATOR 2\CPP\INCLUDE Library file 安装目录\PARSER GENERATOR 2\CPP\LIB\MSVC32 Soure file 安装目录\PARSER GENERATOR 2\CPP\SOURCE 创建vc6.0工程 将生成文件复制到vc6.0创建工程下 Source files和Header Files中加入生成文件(.h/.c/.cpp) 在工程设定中Project->Settings For box选中win32 debug c/c++ ->Category选中General ->Preprocessor Definitions加入YYDEBUG 在工程Project设定Project->Settings For box中选中all link -> Category选中General->Object/Library Modules中加入yld.lib 这里需要注意的是yld.lib为parser generator的DUBUG单线程版本,对于vc的控制台程序是可以的,如果使用了MFC或是Windows applications程序则需要对应下表追加
如果使用了动态库版本需要在程序运行环境中追加DLL的地址 安装目录\PARSER GENERATOR 2\CPP\LIB\MSVC32 如果需要链接yacc或是lex的dll.在Preprocessor Definitions下加入YYDLL. 这样就可以使用vc6.0对lex生成文件进行编译了 |