用的VC 2005, 和原来VC 6的设置项对应不上, 很多半天都找不到.好不容易找全了, 却还是编译出错.

最后,只好选择再装一个VC6, 嗯, 两个VC, 不错.

先介绍一下Parser Generator,主页下载:http://www.bumblebeesoftware.com/downloads.htm

Parser Generator isa YACC and Lex programming tool for Windows. As well as including a Graphical User Interace, the software also includes two versions of YACC and Lex, called AYACC and ALex. Parser Generator is able to generate C, C++ and Java parsers and lexical analysers. This includes both Unicode and Multibyte Character Set (MBCS) variants. In your applications you can create multiple, thread safe, instances of these parsers and lexical analysers.

下面说一下windows环境下parser generator和vc++的各项配置

(一)parser generator的环境设置

安装好parser  generator,打开集成开发环境,点项目Project菜单,在下拉菜单中选LibBuilder,弹出LibBuilder对话框选择属性按钮,弹出compiler properties 对话框:

Name 选择Visual C++ (32-bit)

Directory :msvc32

options:

依次为 vc++版本(Versoin 6)  是否支持unicode码。(选择默认)

是否把w_char_t作为内建类型。(选择默认)

下边是VC的各种目录:

依次为

Compiler Bin Directory (C:\PROGRAM FILES\MICROSOFT VISUAL STUDIO\VC98\BIN

Compiler Bin Directory(C:\PROGRAM FILES\MICROSOFT VISUAL STUDIO\COMMON\MSDEV98\BIN

Compiler Include Directory(C:\PROGRAM FILES\MICROSOFT VISUAL STUDIO\VC98\INCLUDE

Compiler Include Directory(C:\PROGRAM FILES\MICROSOFT VISUAL STUDIO\VC98\MFC\INCLUDE

Compiler Library Directory(C:\PROGRAM FILES\MICROSOFT VISUAL STUDIO\VC98\LIB

Compiler Library Directory(C:\PROGRAM FILES\MICROSOFT VISUAL STUDIO\VC98\MFC\LIB

注意:编译器安装目录根据个人安装目录需要做相应的调整。所有的这些设置完成之后点ok。

最后一步,配置parser  generator的properties,如图即可:

返回LibBuilder。点Build就可以编译vc++使用的lex与yacc的lib库。

注:我参考Vs 2003.net的设置,在VC 2005下进行相应设置, 结果lex与yacc的lib库没能编译通过, 可能是我设置错误, 不应该是尚不兼容的问题吧.

生成库文件在软件安装目录下的D:\Parser Generator 2\Cpp\Lib\msvc32目录下。

(二)vc++环境的设置

1.目录设置

为了在VC++中可以找到包含文件yacc.h和lex.h以及YACC和Lex的库文件,需要对VC++进行相关的目录设置

(1)       选择Tools菜单中的Options命令,打开Options对话框。

(2)       选择Directories选项卡。

(3)       在Show Directories for下拉列表框中选择Include Files。

在Directories框中,点击最后的空目录,并填入 F:\PARGEN\CPP\INCLUDE(根据个人安装目录需要做相应的调整)

(4)       在Show Directories for下拉列表框中选择Library Files。

在Directories框中,点击最后的空目录,并填入F:\PARGEN\CPP\LIB\MSVC32

(5)       在Show Directories for下拉列表框中选择Source Files。

在Directories框中,点击最后的空目录,并填入F:\PARGEN\CPP\SOURCE

(6)       点击OK按钮,Options对话框将接受设置并关闭。

2.项目设置

对于每个VC++项目,都需在VC++中进行以下设置,以使VC++可以从特定的库中接受LEX和YACC所需要的函数和变量

(1)       选择Project菜单中的Settings命令,打开Project Settings对话框。

(2)       在Settings for下拉列表框中选择Win32 Debug。

(3)       选择C/C++选项卡, 在Category下拉列表框中选择General。

在Preprocessor Definitions框中,在当前文本的最后,输入

,YYDEBUG            注:对应到VC 2005为C/C++->Preprocessor->Preprocessor Definitions.

(4)       选择Link选项卡,在Category下拉列表框中选择General。

在Object/Library Modules框中,在当前文本的后面,输入yld.lib            注:VC 6中的Object/Library Modules对应到VC 2005为Propert->Configuration Properties->Linker->Input->Additional Dependencies ,找了好久.

(5)       在Settings for下拉列表框中选择Win32 Release。

(6)     重复第4步的工作。

(7)   点击OK按钮,Project Settings对话框设置完毕。

这样设置之后我们就可以用vc++编译Parser Generator 生成的c文件了。具体为:

先打开Parser Generator 集成开发环境。点击Project菜单,点击下拉菜单中的ParseWizard菜单,一路下去建立一个工程。然后点击project菜单下的的Rebuild  All。在项目文件夹下就生成了相应c文件与h文件。

再用VC++建立一个空控制台工程,然后把用用Parser Generator

生成的c文件和头文件加入工程中。接着对VC++进行上面所说的项目设置,然后就可以编译运行了。新手可以使用parser generator 自带的范例,这样方便检验环境的配置是否正确.

posted on 2007-04-23 18:34 哈哈 阅读(4107) 评论(5)  编辑 收藏 引用

mysql lex yacc脚本_终于成功配置lex和yacc的工具Parser Generator相关推荐

  1. 安装mysql后环境变量_环境变量配置2 安装mysql

    安装个低版本的5.5 net start mysql  启动 安装好直接执行mysql 然后执行mysql -uroot -proot 注意不要被误导:这里的mysql -uroot -p后的root ...

  2. 监控mysql的shell脚本_监控MySQL主从状态的shell脚本

    分享一个Linux下,监控MySQL主从状态及配合企业微信机器人报警的Shell脚本 SLAVE_IP:为监控的主机IP USER:为msyql用户 PASSWORD:为mysql密码 WHEREIS ...

  3. c3po连接mysql带端口号_利用C3PO配置数据库连接池出现的问题

    我利用C3P0配置mysql数据源时候,在日志中不停的出现如下日志,好像在不停的检查过期.这样不停的增加我想肯定会影响性能.日志如下 引用 11462296 [com.mchange.v2.async ...

  4. mysql手机版编译器_带有版本配置的MySQL++的编译器警告

    出于某种原因,当使用发布配置构建时,我收到一些关于"非dll接口类"的警告,但没有调试. 我已经比较了发行版和调试配置,以及我的配置和MySQL++示例配置,但是我看不出是哪个设置 ...

  5. mysql pt kill脚本_使用pt-kill为MySQL保驾护航

    运行平稳的数据库,如果遇到CPU狂飙,那很大可能就是慢SQL出现了.DBA首先要保证的是,数据库别跑挂了,所以我们要把那些运行慢的SQL杀死并记录到文件里,以便后面的排查.对于OLTP型业务,主库SE ...

  6. mysql定时sql脚本_定时执行的SQL脚本

    因为要同步一个表,所以每天要同步一次数据,但是对SQL不是精通的我,为了测试写了一段代码来测试定时功能 创建一个存储过程,是用来插数据的,没有输出和输出参数 create or replace pro ...

  7. java mysql 语句解析器_几种基于Java的SQL解析工具的比较与调用

    1.sqlparser http://www.sqlparser.com/ 优点:支持的数据库最多,除了传统数据库外还支持hive和greenplum一类比较新的数据库,调用比较方便,功能不错 缺点: ...

  8. mysql gui 有哪些_推荐五款较好的MySQLGUI工具

    大多数数据库都是由两个截然不同的部分组成的:后端(存储数据的地方)和前端(一个用于连接数据组件的用户界面).这种架构可以 大多数数据库都是由两个截然不同的部分组成的:后端(存储数据的地方)和前端(一个 ...

  9. mysql 文档生成器_最好用的数据库文档生成工具

    一 前言 本文介绍一些比较流行的数据库文档生成工具,什么是数据库文档? 其实在工作中进行项目交付的时候经常用到:简单来说数据库文档就是对整个数据库设计说明的文档,比如使用了哪个数据库,每张表的字段,类 ...

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

    1.下载安装 Parser Generator是Windows下YACC和LEX的实现,是由英国Bumble-Bee Software公司开发. 下载地址http://www.bumblebeesof ...

最新文章

  1. js左侧三级菜单导航代码
  2. CIO职能向流程演进
  3. Sql Server'不允许保存更改'错误►防止保存需要重新创建表的更改
  4. 线上操作与线上问题排查实战
  5. 4E4 models
  6. Vue在插槽slot时报错:Component template should contain exactly one root element. If you are using v-ifen
  7. axure 元件_在Axure中实现波纹点击特效按钮的方法
  8. 广东中国科学院计算机网络信息中心,中国科学院
  9. java金字塔程序_Java中的金字塔模式程序
  10. C/C++[codeup 1931]打印日期,一年的第n天是几月几号
  11. 软件设计模式、目标、原则
  12. React开发chrome插件系列教程之插件开发环境搭建
  13. 22.11.16 IO day 8
  14. linux 不工作,Ubuntu用户Steam控制器不工作解决办法
  15. 基于SpringBoot+EasyExcel+vue3实现excel表格的导入和导出
  16. python闲鱼二手爬虫_Python 爬虫咸鱼版
  17. 关于linux下的xinetd服务
  18. Mac系统环境变量配置和说明【实用版】
  19. V8 堆外内存 ArrayBuffer 垃圾回收的实现
  20. python中encode是什么意思_【转 记录】python中的encode以及decode

热门文章

  1. python破解百度云限速_python实战小项目,多线程百度云盘下载,突破限速,超越迅雷超高速下载...
  2. Linux BT下载(8)-种子解析模块设计与实现2
  3. Spark SVN + Eclipse 3.3 + Subversive Installation Guide
  4. 计算机毕业设计的代码会查重吗,一般毕业论文会查重代码吗?
  5. 用slub track调试use after free问题
  6. pythondebug教学_python debug的使用方式
  7. Earfcn与Frequency转换
  8. vue项目前端页面模板,基于vue的前端模板
  9. Win7 SP1 安装python 3.8时,提示 KB2533623 update is required to continue
  10. OpenCL入门程序