lex & 中应该链接哪些库yacc (solaris) 包含 YY_BUFFER_STATE
lex & 中应该链接哪些库yacc (solaris) 包含 YY_BUFFER_STATE。当我使用时 lex 中的 YY_BUFFER_STATE 并编译它。我收到一个错误,说它未声明。但是当我在 unix 中执行此操作时,我得到了输出,所以请帮助我。
what libraries should be linked in lex & yacc (solaris) to include YY_BUFFER_STATE. when i use
YY_BUFFER_STATE in lex and compile it .i get an error saying tat it is undeclared.but when i do it in unix i am getting the output so pls help me.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
YY_BUFFER_STATE 不需要任何库——它全部由 Flex 内置到生成的扫描仪中。然而,它是特定于flex的,所以你必须使用flex而不是solaris附带的lex。
There's no library required for YY_BUFFER_STATE -- its all built into the generated scanner by flex. However, it IS flex specific, so you have to use flex and not the lex that comes with solaris.
lex 库历史上是
libl
,因此它将与-ll
链接。对于 lex 和 yacc,经典的链接行可能是-ll -ly
。有时您需要
-lfl
来指定flex
库。由于您使用的是 Solaris,因此您可能拥有真正的 lex/yacc,也可能拥有免费版本,它们在很多方面都有所不同。我认为
YY_BUFFER_STATE
特定于免费实现。The lex library is historically
libl
so it would be linked with-ll
. A classical link line might be-ll -ly
for lex and yacc.Sometimes you need
-lfl
to specify theflex
library.Since you are on Solaris you may have the real lex/yacc and you may have the free versions, which are rather different in many ways. I think
YY_BUFFER_STATE
is specific to the free implementation.