Flex-2.5.34

Nicolas FRANCOIS nicolas.francois at free.fr
Wed Apr 9 06:26:17 PDT 2008


Le Mon, 7 Apr 2008 06:58:33 -0700 "Dan Nicholson" <dbn.lists at gmail.com> a
écrit :

> On Mon, Apr 7, 2008 at 3:56 AM, Nicolas FRANCOIS
> <nicolas.francois at free.fr> wrote:
> > Hi.
> >
> >  The flex version present in the SVN LFS book has some compatibility
> >  problem with old lex. Or, to be more precise (if I understood the message
> >  I wrote clearly), the previous versions of flex did not halt on
> >  incompatible options of lex, while the 2.5.34 version produces an error.
> >
> >  Some examples of packages which don't appreciate the change are
> >  tetex-3.0, and lm_sensors (both version 2 and version 3).
> >
> >  I think version 2.5.35 partly solves the issue. So one should upgrade,
> >  shouldn't one ?
> 
> Seems like a good idea to me. Could you show output when from when the
> lex handling bombs, like from one of the packages you listed above? I
> just want to know what I'm looking for.

Package lm_sensors 2.10.6 (same error with 3.0), with flex-2.5.34 :

root [ /sources/lm_sensors-2.10.6 ]# make user
[...]
gcc -I. -Ikernel/include -I/usr/local/include  -DSYSFS_SUPPORT -Wall -O2
  -c lib/conf-parse.c -o lib/conf-parse.ao 
flex -Psensors_yy -t -Cfe -8
lib/conf-lex.l > lib/conf-lex.c lib/conf-lex.l:51: mauvais caractère : /
lib/conf-lex.l:51: mauvais caractère : *
lib/conf-lex.l:51: erreur inconnue de traitement à la section 1
lib/conf-lex.l:51: erreur inconnue de traitement à la section 1
lib/conf-lex.l:51: erreur inconnue de traitement à la section 1
lib/conf-lex.l:51: erreur inconnue de traitement à la section 1
lib/conf-lex.l:51: erreur inconnue de traitement à la section 1
lib/conf-lex.l:51: mauvais caractère : *
lib/conf-lex.l:51: mauvais caractère : /
lib/conf-lex.l:57: mauvais caractère : /
lib/conf-lex.l:57: mauvais caractère : *
lib/conf-lex.l:57: erreur inconnue de traitement à la section 1
lib/conf-lex.l:57: erreur inconnue de traitement à la section 1
lib/conf-lex.l:57: erreur inconnue de traitement à la section 1
lib/conf-lex.l:57: erreur inconnue de traitement à la section 1
lib/conf-lex.l:57: erreur inconnue de traitement à la section 1
lib/conf-lex.l:57: mauvais caractère : *
lib/conf-lex.l:57: mauvais caractère : /
lib/conf-lex.l:63: mauvais caractère : /
lib/conf-lex.l:63: mauvais caractère : *
lib/conf-lex.l:63: mauvais caractère : *
lib/conf-lex.l:63: mauvais caractère : /
lib/conf-lex.l:69: mauvais caractère : /
lib/conf-lex.l:69: mauvais caractère : *
lib/conf-lex.l:69: mauvais caractère : :
lib/conf-lex.l:69: mauvais caractère : `
lib/conf-lex.l:69: mauvais caractère : 1
lib/conf-lex.l:69: mauvais caractère : 0
lib/conf-lex.l:69: mauvais caractère : '
lib/conf-lex.l:69: mauvais caractère : ,
lib/conf-lex.l:69: mauvais caractère : `
lib/conf-lex.l:69: mauvais caractère : 1
lib/conf-lex.l:69: mauvais caractère : 0
lib/conf-lex.l:69: mauvais caractère : .
lib/conf-lex.l:69: mauvais caractère : 4
lib/conf-lex.l:69: mauvais caractère : '
lib/conf-lex.l:69: mauvais caractère : `
lib/conf-lex.l:69: mauvais caractère : .
lib/conf-lex.l:69: mauvais caractère : 4
lib/conf-lex.l:69: mauvais caractère : '
lib/conf-lex.l:69: mauvais caractère : ,
lib/conf-lex.l:69: mauvais caractère : `
lib/conf-lex.l:69: mauvais caractère : 1
lib/conf-lex.l:69: mauvais caractère : 0
lib/conf-lex.l:69: mauvais caractère : .
lib/conf-lex.l:69: mauvais caractère : '
lib/conf-lex.l:69: mauvais caractère : *
lib/conf-lex.l:69: mauvais caractère : /
lib/conf-lex.l:73: mauvais caractère : /
lib/conf-lex.l:73: mauvais caractère : *
lib/conf-lex.l:73: condition de départ are déclarée deux fois
lib/conf-lex.l:73: mauvais caractère : *
lib/conf-lex.l:73: mauvais caractère : /
lib/conf-lex.l:77: mauvais caractère : /
lib/conf-lex.l:77: mauvais caractère : *
lib/conf-lex.l:77: condition de départ Only déclarée deux fois
lib/conf-lex.l:77: mauvais caractère : 1
lib/conf-lex.l:77: condition de départ and déclarée deux fois
lib/conf-lex.l:77: mauvais caractère : 2
lib/conf-lex.l:77: mauvais caractère : 5
lib/conf-lex.l:77: mauvais caractère : 5
lib/conf-lex.l:77: mauvais caractère : ,
lib/conf-lex.l:77: mauvais caractère : .
lib/conf-lex.l:77: mauvais caractère : *
lib/conf-lex.l:77: mauvais caractère : /
make: *** [lib/conf-lex.c] Erreur 1


With flex-2.5.35 : no error message.

Hope this helps. From what I read on Google, the problem is the %a, %x
(not sure about them exactly) and other options that are not quite well
understood by flex. Before 2.5.33, they were ignored, now they trigger
error messages.

\bye

-- 

Nicolas FRANCOIS                      |  /\ 
http://nicolas.francois.free.fr       | |__|
                                      X--/\\
We are the Micro$oft.                   _\_V
Resistance is futile.		    
You will be assimilated.         darthvader penguin



More information about the lfs-support mailing list