【问题标题】:/usr/bin/ld: cannot find -lfl/usr/bin/ld: 找不到 -lfl
【发布时间】:2018-10-21 14:21:20
【问题描述】:

我在命令行中写了gcc lex.yy.c -o ornek -lfl。然后我得到一个错误如下:

/usr/bin/ld: cannot find -lfl
collect2: error: ld returned 1 exit status

我该如何解决这个问题?

【问题讨论】:

标签: ubuntu flex-lexer


【解决方案1】:

您需要单独安装libfl-dev 才能拥有fl 库。

但您可能不需要那个库。它只提供了两个东西,都不是特别有用:

  • yywrap 的无操作定义。相反,如果使用它,请通过放置来避免需要

    %option noyywrap
    

    在弹性文件的第一部分。

  • main 的定义,它只是重复调用yylex。通常,您会想要编写一个更有趣的main 函数。但是如果你想复制-lfl中提供的默认值,它看起来基本上是这样的:

    int main(void) {
      while(yylex()) { }
      return 0;
    }
    

【讨论】:

    猜你喜欢
    • 2021-05-07
    • 2011-07-16
    • 2012-05-17
    • 2020-04-14
    • 2012-03-26
    • 2018-12-13
    • 2015-09-22
    • 2020-01-19
    • 2012-01-14
    相关资源
    最近更新 更多