Flex(字句解析プログラム)を使用している単純な「言語」があります。次のようになります。
/* 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:〜/ Desktop $ 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つの終了ステータスを返しました
なにが問題ですか?