RE: Comedilib build problem with flex

On 14/06/2007 00:23, Aref Taidi wrote:
> Hello all,
> 
> I am getting the following error when I try to build comedilib on my
FC5
> machine?
> 
> My flex is version 2.5.4. I just updated it using flex.i386
> 0:2.5.4a-41.fc5 package. I would be most grateful if you could tell me
> what the solution is please?
> 
> [root_at_localhost comedilib]# make
> make  all-recursive
> make[1]: Entering directory `/usr/local/src/comedilib'
> Making all in lib
> make[2]: Entering directory `/usr/local/src/comedilib/lib'
> flex --header-file=./calib_lex.h -Pcalib_yy -o./calib_lex.c
calib_lex.l
> flex: unknown flag '-'.  For usage, try
>         flex --help
> make[2]: *** [calib_lex.c] Error 1
> make[2]: Leaving directory `/usr/local/src/comedilib/lib'
> make[1]: *** [all-recursive] Error 1
> make[1]: Leaving directory `/usr/local/src/comedilib'
> make: *** [all] Error 2
> 
> 
> Many thanks in advance.

>> Fedora and RHEL ship with an ancient version of flex for some strange

>> reason (fixed in Fedora 7).  It's not a problem for the released 
>> versions of comedilib as they ship with pre-yacc'ed and pre-lex'ed C 
>> sources, but it is a problem with the CVS snapshots.
>> 
>> If you can generate calib_lex.c and calib_lex.h from calib_lex.l on a

>> machine with a more modern version of flex, you can just copy those
to 
>> your comedilib sources on your FC5  machine.  They only need to be 
>> rebuilt when calib_lex.l is updated.
>> 
>> Alternatively, try installing a more modern version of flex locally
on 
>> your FC5 machine.

I just downloaded the released versions of these packages which avoided
the flex incompatibility problem but the build is now failing with a
huge number of errors in comedi_ruby_wrap.c - I have pasted some of them
below - any idea please?

comedi_ruby_wrap.c:3701: error: dereferencing pointer to incomplete type
comedi_ruby_wrap.c: In function
'_wrap_comedi_bufinfo_struct_bytes_written_set':
comedi_ruby_wrap.c:3717: error: dereferencing pointer to incomplete type
comedi_ruby_wrap.c: In function
'_wrap_comedi_bufinfo_struct_bytes_written_get':
comedi_ruby_wrap.c:3732: error: dereferencing pointer to incomplete type
comedi_ruby_wrap.c: In function
'_wrap_comedi_bufinfo_struct_unused_set':
comedi_ruby_wrap.c:3750: error: dereferencing pointer to incomplete type
comedi_ruby_wrap.c: In function
'_wrap_comedi_bufinfo_struct_unused_get':
comedi_ruby_wrap.c:3766: error: dereferencing pointer to incomplete type
comedi_ruby_wrap.c: In function '_wrap_new_comedi_bufinfo_struct':
comedi_ruby_wrap.c:3796: error: invalid application of 'sizeof' to
incomplete type 'struct comedi_bufinfo_struct' 
comedi_ruby_wrap.c: At top level:
comedi_ruby_wrap.c:3803: warning: 'struct comedi_bufinfo_struct'
declared inside parameter list
comedi_ruby_wrap.c:3803: error: conflicting types for
'free_comedi_bufinfo_struc
t'
comedi_ruby_wrap.c:738: error: previous declaration of
'free_comedi_bufinfo_struct' was here
comedi_ruby_wrap.c: In function '_wrap_comedi_range_min_set':
comedi_ruby_wrap.c:3808: error: 'comedi_range' undeclared (first use in
this function)
comedi_ruby_wrap.c:3808: error: 'arg1' undeclared (first use in this
function)
comedi_ruby_wrap.c:3808: error: expected expression before ')' token
comedi_ruby_wrap.c: In function '_wrap_comedi_range_min_get':
comedi_ruby_wrap.c:3823: error: 'comedi_range' undeclared (first use in
this function)

Received on 2007-06-15Z10:52:13