C语言 在函数“_start”中:(. text +0x1b):对“main”的未定义引用

btxsgosb  于 2023-04-19  发布在  其他
关注(0)|答案(1)|浏览(299)

我试图用flex解析一个输入文件.l文件,但是我在构造程序时遇到了问题。我已经包含了我的flex代码以及我遇到的问题。

.l文件:

%{
#include "main.tab.h"
%}

%%
[ \t\n]          /* ignore whitespace */
"MATCH"          { return MATCH; }
"RETURN"         { return RETURN; }
"-"              { return DASH; }
"("              { return LPAREN; }
")"              { return RPAREN; }
"["              { return LBRACKET; }
"]"              { return RBRACKET; }
[uv]             { return VARIABLE; }
%%
int yywrap(void) {
    return 1;
}

错误:

/usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/Scrt1.o: in function `_start':
(.text+0x1b): undefined reference to `main'
collect2: error: ld returned 1 exit status

cotxawn7

cotxawn71#

错误似乎就在这条线上:

#include "main.tab.h"

在你的目录中没有这样的文件。你应该检查这个include语句并提供更多的上下文,这样我就可以进一步帮助你。

相关问题