[GRASS5] r.binfer compile problem

Markus Neteler neteler at geog.uni-hannover.de
Tue Apr 18 08:49:12 EDT 2000


Hi there,

thanks for you comments. The problem is: I need a general
solution valid for all platforms without any further
changes 

 :-))


So it must be some #ifdef stuff, I feel.

Markus


On Tue, Apr 18, 2000 at 10:02:42AM +0200, Michel Wurtz - ENGEES/CEREG wrote:
> Markus Neteler wrote:
> > 
> > Dear developers,
> > 
> > another own compile problem I have with
> > r.binfer/Linux.
> > 
> > I have two different platforms running Linux.
> > 
> > A definition in:
> > src/raster/r.binfer/binfer.l
> > is causing problems.
> > 
> > [row 39]
> > 
> > #ifndef sparc
> > #ifndef linux
> > int yylineno = 1;
> > #endif
> > #endif
> > 
> > On machine one above compiles, on machine two I get
> > binfer.l: In function 'yylex':
> > binfer.l:114: 'yylineno' undeclared (first use in this function)
> > binfer.l:114: (Each undeclared identifier is reported only once
> > binfer.l:114: for each function it appears in.)
> > make: *** [OBJ.i586-linux-elf/lex.o] Error 1
> > 
> > It is quite strange. Any ideas?
> 
> Are you using flex ? (the lex program from GNU/FSF)
> I had the same message. Look at the command being run
> If it is flex instead of lex, you have to add the -l option.
> "flex -l" knows about yylineno, but not flex.  The man page said:
> 
>  flex's -l option turns on maximum compatibility with the original
>  AT&T  lex implementation, at the cost of a major loss in the gen-
>  erated scanner's performance.  We note below which incompatibili-
>  ties can be overcome using the -l option.
>  
>  flex is fully compatible with lex with the following exceptions:
>  -      The undocumented lex scanner internal variable yylineno is
>         not supported unless -l or %option yylineno is used.               
> 
> etc.
> 
> Doing this solved the problem when compiling grass4.3 with a
> Slakware 7.0 Linux distribution, and installing flex and not lex.
> The normal way is to have a shell script /usr/bin/lex which looks
> 
> #!/bin/sh
> flex -l $*
> 
> but this file wasn't created on my home machine (altough it was
> on my work machine : wrong answer while installing Linux ?) 
> -- 
> Michel Wurtz    ENGEES - CEREG
>                 1, quai Koch - BP 1039, F-67070 STRASBOURG cedex
>                 Tel: +33 03.88.24.82.45  Fax: +33 03.88.37.04.97

-- 
Dipl.-Geogr. Markus Neteler *  University of Hannover
Institute of Physical Geography and Landscape Ecology
Schneiderberg 50 * D-30167 Hannover * Germany
Tel: ++49-(0)511-762-4494  Fax: -3984

---------------------------------------- 
If you want to unsubscribe from GRASS Development
Team internal mailing list write to:
minordomo at geog.uni-hannover.de with
subject 'unsubscribe grass5'
length: 3461
max: 0



More information about the grass-dev mailing list