У меня есть простой "язык", который я использую Flex (Lexical Analyzer), он выглядит следующим образом:
/* Just like UNIX wc */
%{
int chars = 0;
int words = 0;
int lines = 0;
%}
%%
[a-zA-Z]+ { words++; chars += strlen(yytext); }
\n { chars++; lines++; }
. { chars++; }
%%
int main()
{
yylex();
printf("%8d%8d%8d\n", lines, words, chars);
}
Я запускаю flex count.l
, все идет нормально без ошибок или предупреждений, затем, когда я пытаюсь сделать cc lex.yy.c
, я получил следующие ошибки:
ubuntu @eeepc: ~/Рабочий стол $cc lex.yy.c
/tmp/ccwwkhvq.o: В функцииyylex': lex.yy.c:(.text+0x402): undefined reference to
yywrap '
/tmp/ccwwkhvq.o: В функцииinput': lex.yy.c:(.text+0xe25): undefined reference to
yywrap '
collect2: ld возвращен 1 статус выхода
Что не так?