0

我正在尝试运行 lexx 和 yacc 程序,但出现以下错误:

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

请告诉我应该添加哪些库?

4

3 回答 3

2

你能liby.a/lib目录中找到吗?如果您没有该文件,您可以使用apt-file liby.a它来查找包含它的包。就我而言,apt install libbison-dev有效。

于 2020-03-14T02:37:51.613 回答
1

我猜这个问题是你使用的 yacc 版本不是旧的 AT&T yacc,它不附带 liby(-ly你有)。因此,您需要-ly从命令行中删除该选项,并提供您自己的mainand实现yyerror

于 2013-09-18T18:15:59.620 回答
0

哪个版本的 yacc 和 lex 有“-ly”参数?我在大学里用过这个命令:

gcc gram.c gram.h sem.c -ly -ll 或 cc gram.c gram.h sem.c -ly -ll

并且有效!但是在我家 komputer 不工作..

于 2017-01-20T09:15:47.513 回答