我将把用于unix的C项目移植到windows中。到目前为止,我可以编译它,但不能编译。我得到的问题是,一些这是在头文件中声明该功能在files.so我收到以下错误YACC定义:yacc和野牛在视觉工作室
error LNK2001: unresolved external symbol function_name
我在加入.Y和.L文件该project.I的源目录觉得我不能端口YACC文件到Windows版本或我做的事情stupid.I搜索它的网络,但不能得到正确的教程it.Could请你让我知道
- 如何在项目中添加.y或.l文件。
- 我将如何使这些文件兼容到Windows?
- 如何将它们与其他目标文件链接。
编辑
我试图与该.l
文件变更为使用flex.exe
。继.yy.c
文件是它
c:\> flex.exe name.l
假设的命令,无论是flex.exe和名称。 l在C;>
。我将这些文件.l .y(previously present for parsing in unix system) .yy.c(corrsonding yacc file for windows)
加载到先前存在的项目的解决方案中。有一次,我编译,我得到以下
Can't read the header file parserheaderfile.h
这是头文件需要由在UNIX系统 的bison
产生。所以我认为我不能使bison
与windows
兼容。所以请问他我该如何解决这个问题?
在此先感谢。
这是每次使用f/lex和/或bison/yacc启动新项目时必须设置的东西吗?或者你可以设置一次,VS会永远记住这些设置吗?另外,有没有推荐使用这些库的IDE?在使用gcc进行编译之前,必须运行f/lex和/或bison/yacc时,从命令行执行操作有时会很烦人。 – velocirabbit
@velocirabbit这是一个项目特定的设置。所以你需要为每个.l或者.y文件配置它。 – Rudi