EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  <20062007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024  Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  <20062007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Problem with e_flex in base
From: "Mark Rivers" <[email protected]>
To: <[email protected]>
Date: Wed, 22 Feb 2006 10:21:09 -0600
Folks,
 
I have found a problem with e_flex in base (3.14.8.2).  It does not handle .l files that have DOS terminators, which is what happens if one un-tars EPICS base on a Cygwin system and tries to build it. Here is the error:
 
$ make
make -C O.cygwin-x86 -f ../Makefile TOP=../../.. T_A=cygwin-x86 install
make[1]: Entering directory `/cygdrive/c/epics/base-3.14.8.2/src/as/O.cygwin-x86'
../../../bin/cygwin-x86/e_flex.exe -S../../../include/flex.skel.static -8 ../asLib_lex.l
"../asLib_lex.l", line 15: illegal character
"../asLib_lex.l", line 29: illegal character
"../asLib_lex.l", line 31: unknown error processing section 1
"../asLib_lex.l", line 32: unknown error processing section 1
"../asLib_lex.l", line 33: unknown error processing section 1
"../asLib_lex.l", line 34: unknown error processing section 1
"../asLib_lex.l", line 35: unknown error processing section 1
"../asLib_lex.l", line 36: unknown error processing section 1
"../asLib_lex.l", line 37: unknown error processing section 1
"../asLib_lex.l", line 42: unknown error processing section 1
"../asLib_lex.l", line 43: unknown error processing section 1
"../asLib_lex.l", line 47: unknown error processing section 1
"../asLib_lex.l", line 48: unknown error processing section 1
"../asLib_lex.l", line 53: unknown error processing section 1
"../asLib_lex.l", line 54: unknown error processing section 1
"../asLib_lex.l", line 62: unknown error processing section 1
"../asLib_lex.l", line 63: unknown error processing section 1
"../asLib_lex.l", line 64: unknown error processing section 1
"../asLib_lex.l", line 65: unknown error processing section 1
"../asLib_lex.l", line 66: unknown error processing section 1
"../asLib_lex.l", line 67: unknown error processing section 1
"../asLib_lex.l", line 68: unknown error processing section 1
"../asLib_lex.l", line 69: unknown error processing section 1
"../asLib_lex.l", line 70: unknown error processing section 1
"../asLib_lex.l", line 71: unknown error processing section 1
"../asLib_lex.l", line 81: unknown error processing section 1
"../asLib_lex.l", line 82: fatal parse error
make[1]: *** [asLib_lex.c] Error 1
make[1]: Leaving directory `/cygdrive/c/epics/base-3.14.8.2/src/as/O.cygwin-x86'
make: *** [install.cygwin-x86] Error 2
 
One can make it work by converting to Unix line terminators on this file:
 
$ dos2unix.exe asLib_lex.l
asLib_lex.l: done.
 
$ make
make -C O.cygwin-x86 -f ../Makefile TOP=../../.. T_A=cygwin-x86 install
make[1]: Entering directory `/cygdrive/c/epics/base-3.14.8.2/src/as/O.cygwin-x86'
../../../bin/cygwin-x86/e_flex.exe -S../../../include/flex.skel.static -8 ../asLib_lex.l
mv lex.yy.c asLib_lex.c
rm -f asLib.c y.tab.c
../../../bin/cygwin-x86/antelope.exe  ../asLib.y
mv y.tab.c asLib.c
gcc -c   -D_POSIX_THREADS -D_POSIX_TIMERS        -D_X86_  -DUNIX  -DCYGWIN32 -U_WIN32   -pedantic  -O3  -Wall
-I. -I.. -I../../../include/os/cygwin32 -I../../../include         asLib.c
In file included from ../asLib.y:211:
../asLib_lex.l: In function `yylex':
../asLib_lex.l:44: warning: pointer targets in passing arg 1 of `sscanf' differ in signedness
../asLib_lex.l:49: warning: pointer targets in passing arg 1 of `strlen' differ in signedness
../asLib_lex.l:50: warning: pointer targets in passing arg 2 of `strcpy' differ in signedness
../asLib_lex.l:55: warning: pointer targets in passing arg 1 of `strlen' differ in signedness
../asLib_lex.l:57: warning: pointer targets in passing arg 2 of `strcpy' differ in signedness
../asLib_lex.l:78: warning: pointer targets in passing arg 2 of `yyunput' differ in signedness
../asLib_lex.l: In function `yy_get_next_buffer':
../asLib_lex.l:250: warning: pointer targets in passing arg 1 of pointer to function differ in signedness
ar -rc   libasHost.a       asLib.o asTrapWrite.o
ranlib libasHost.a
ar -rc   libasIoc.a      asDbLib.o asCa.o asLib.o asTrapWrite.o
ranlib libasIoc.a
Installing library ../../../lib/cygwin-x86/libasHost.a
ranlib ../../../lib/cygwin-x86/libasHost.a
Installing library ../../../lib/cygwin-x86/libasIoc.a
ranlib ../../../lib/cygwin-x86/libasIoc.a
g++ -o ascheck.exe  -L../../../lib/cygwin-x86/         -Wl,-rpath,/cygdrive/c/epics/base-3.14.8.2/lib/cygwin-x86
ascheck.o    -lasHost -ldbStaticHost -lCom  -lpthread    -lm -lgcc
Installing binary ../../../bin/cygwin-x86/ascheck.exe
make[1]: Leaving directory `/cygdrive/c/epics/base-3.14.8.2/src/as/O.cygwin-x86'
 
Would it be possible to fix e_flex so this does not happen?
 
Thanks,
Mark
 


Replies:
Re: Problem with e_flex in base Andrew Johnson

Navigate by Date:
Prev: Re: error while compiling channelArchiver2.x Kay-Uwe Kasemir
Next: GPIB swap 1014D with 1014 Waggoner, Bill
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  <20062007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: Re: error while compiling channelArchiver2.x Kay-Uwe Kasemir
Next: Re: Problem with e_flex in base Andrew Johnson
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  <20062007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 02 Sep 2010 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·