/ usr / bin / ld:找不到-lfl

时间:2018-10-21 14:21:21

标签: ubuntu flex-lexer

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

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

我该如何解决这个问题?

1 个答案:

答案 0 :(得分:1)

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

但是您可能不需要该库。它仅提供两件事,这两项都不是特别有用:

  • yywrap的无为定义。相反,如果使用此选项,请放置

    %option noyywrap
    

    在弹性文件的第一部分。

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

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