Ethereal-dev: [Ethereal-dev] dfilter / flex problem

Note: This archive is from the project's previous web site, ethereal.com. This list is no longer active.

From: Georg von Zezschwitz <gvz@xxxxxxxxxx>
Date: Fri, 25 Apr 2003 21:25:08 +0200
Hi,

I have to touch the code again, as the tcpdump-files produced
by a Nokia Firewall make ethereal crash...

However, I spent now some hours trying to get a binary, and
probably somebody can give me a hint for my blocked (and
furious) brain:

rm -f .libs/ethereal.nm .libs/ethereal.nmS .libs/ethereal.nmT
creating .libs/etherealS.c
(cd .libs && gcc -c -fno-builtin -fno-rtti -fno-exceptions "etherealS.c")
rm -f .libs/etherealS.c .libs/ethereal.nm .libs/ethereal.nmS .libs/ethereal.nmT
gcc -DINET6 "-D_U_=__attribute__((unused))" -Wall -W -g -O2 -I....
-ldl -lXi -lXext -lX11 -lm -lz

epan/dfilter/libdfilter.a(dfilter.o)(.text+0x219): In function `dfilter_compile':
/home/gvz/ethereal/epan/dfilter/dfilter.c:201: undefined reference to `df_scanner_text'
epan/dfilter/libdfilter.a(dfilter.o)(.text+0x316):/home/gvz/ethereal/epan/dfilter/dfilter.c:268: undefined reference to `df_scanner_cleanup'
epan/dfilter/libdfilter.a(dfilter.o)(.text+0x346):/home/gvz/ethereal/epan/dfilter/dfilter.c:280: undefined reference to `df_scanner_cleanup'
epan/dfilter/libdfilter.a(scanner.o)(.text+0x57e): In function `df_lex':
/home/gvz/ethereal/epan/dfilter/scanner.c:1064: undefined reference to `df_wrap'
epan/dfilter/libdfilter.a(scanner.o)(.text+0xc88): In function `input':
/home/gvz/ethereal/epan/dfilter/scanner.c:1391: undefined reference to `df_wrap'
collect2: ld returned 1 exit status
rm -f .libs/etherealS.o
make[2]: *** [ethereal] Error 1
make[2]: Leaving directory `/home/gvz/ethereal'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/gvz/ethereal'

System is Debian unstable, flex 2.5.31 installed.


Btw: ascendscanner.l also had some problems on my system, but they were
easy:
The generated code contained to definitions of "ascendwrap", one
in line 327:

#define YY_AT_BOL() (YY_CURRENT_BUFFER_LVALUE->yy_at_bol)

/* Begin user sect3 */

#define ascendwrap(n) 1
#define YY_SKIP_YYWRAP


and another one in line 2302:

#line 282 "./ascend-scanner.l"

int ascendwrap() { return 1; }

void ascend_init_lexer(FILE_T fh)

which made the compiler stucking at the second one.

Cheers,


Georg