lex&中应该链接哪些库? yacc(solaris)包括YY_BUFFER_STATE。当我使用 在lex中YY_BUFFER_STATE并编译它。我得到一个错误,说它是未声明的。但是当我在unix中执行时我得到了输出所以请帮助我。
答案 0 :(得分:1)
lex库在历史上libl
,因此它将与-ll
链接。对于lex和yacc,经典链接行可能是-ll -ly
。
有时您需要-lfl
来指定flex
库。
由于你在Solaris上,你可能拥有真正的lex / yacc,你可能拥有免费版本,这在很多方面都有很大的不同。我认为YY_BUFFER_STATE
特定于免费实施。
答案 1 :(得分:1)
YY_BUFFER_STATE不需要库 - 它全部内置于flex生成的扫描程序中。但是,它是特定于flex的,所以你必须使用flex而不是solaris附带的lex。