我正在尝试在Windows上编译项目,它使用flex / bison。
安装MinGW后编译flex和bison文件很顺利,但是当我进入构建的最后一步时:
g++ -o hexciting CommandParser.tab.o CommandParser.yy.o Command.o -lfl
它说无法找到图书馆。
在google上玩了一段时间之后,我尝试将标记更改为-llibfl.a,但是也无法找到此库。
我如何获得此库的副本或自己构建一个?
答案 0 :(得分:3)
答案 1 :(得分:2)
我通过cygwin使用flex,然后在Visual Studio中编译,以避免必须链接库“l”,你只需要定义
int yywrap()
当前文件结束时调用此函数,如果yywrap返回0,则加载新文件,1当没有更多文件存在时调用。
对于你的另一个问题,我硬编码yywrap返回1,因为它是从标准的经文文件中输入的。
答案 2 :(得分:0)
使用Win flex-bison。它在Visual Studio中非常容易使用。