[Monetdb-developers] Error compiling MEL w/ flex 2.5.33 & bison 2.3

Riham r.abdelkader at ewi.utwente.nl
Mon Oct 2 17:45:17 CEST 2006


Hi Stefan,

I have in fact commented both lines #if/#endif in mel.mx file, but have 
kept everything in between. This way it worked and did not get the error 
again. But when I bootstrap monetdb i get the followiing message:
================================================================
kader at wlan139064:~/home/MonetDB_XQuery_CVS/src/MonetDB> ./bootstrap
automake 1.9.6 is 1.5 or newer. Good.
autoconf 2.60 is 2.57 or newer. Good.
libtool 1.5.22 is 1.4 or newer. Good.
Python 2.4.3 is 2.0.0 or newer. Good.
Traceback (most recent call last):
  File 
"/local/kader/home/MonetDB_XQuery_CVS/monetdb_xquery/bin/autogen.py", 
line 29, in ?
    from autogen import am
ImportError: No module named autogen
=================================================================
Of course, the configure file is not generated afterwards and thus could 
not continue the deployment.

I am working on Suse10.2.

Thank you for trying to help,
Riham


Stefan Manegold wrote:
> On Mon, Oct 02, 2006 at 12:47:39PM +0200, Niels Nes wrote:
>   
>> On Mon, Oct 02, 2006 at 12:32:22PM +0200, Riham wrote:
>>     
>>> Hi,
>>>
>>> I am a new PhD student at the University of Twente. I am working with 
>>> Dr. Maurice van Keulen on Optimizing Pathfinder queries. I was 
>>> installing Monet on my new linux system and I got the following error:
>>>
>>> ===========================================================================
>>> kader at netloosewi840:~/home/MonetDB_XQuery_CVS/build/buildtools> make
>>> cd 
>>> ""/local/kader/home/MonetDB_XQuery_CVS/build/buildtools/../../src/buildtools"/autogen" 
>>> && python setup.py build
>>> running build
>>> running build_py
>>> running build_scripts
>>> cd _MX && make MAKE=make all
>>> make[1]: Entering directory 
>>> `/local/kader/home/MonetDB_XQuery_CVS/build/buildtools/_MX'
>>> make  all-am
>>> make[2]: Entering directory 
>>> `/local/kader/home/MonetDB_XQuery_CVS/build/buildtools/_MX'
>>> make[2]: Nothing to be done for `all-am'.
>>> make[2]: Leaving directory 
>>> `/local/kader/home/MonetDB_XQuery_CVS/build/buildtools/_MX'
>>> make[1]: Leaving directory 
>>> `/local/kader/home/MonetDB_XQuery_CVS/build/buildtools/_MX'
>>> cd _MEL && make MAKE=make all
>>> make[1]: Entering directory 
>>> `/local/kader/home/MonetDB_XQuery_CVS/build/buildtools/_MEL'
>>> make  all-am
>>> make[2]: Entering directory 
>>> `/local/kader/home/MonetDB_XQuery_CVS/build/buildtools/_MEL'
>>> g++  -g    -o mel   any_arg.o atom_arg.o atom.o atomops.o bat_arg.o 
>>> builtin.o command.o debug.o depend.o dependency.o epilogue.o FileInfo.o 
>>> glue.o html.o iterator.o link.o ListIterator.o mel.o mel.tab.o mel.yy.o 
>>> mil.o module.o object.o operator.o ops.o prelude.o proto.o symbol.o 
>>> symtable.o type_arg.o use.o var_arg.o
>>> mel.tab.o: In function `semerror()':
>>> /local/kader/home/MonetDB_XQuery_CVS/build/buildtools/_MEL/mel.yy:471: 
>>> undefined reference to `yylineno'
>>> /local/kader/home/MonetDB_XQuery_CVS/build/buildtools/_MEL/mel.yy:472: 
>>> undefined reference to `yylineno'
>>> mel.tab.o: In function `yyparse()':
>>> /local/kader/home/MonetDB_XQuery_CVS/build/buildtools/_MEL/mel.yy:59: 
>>> undefined reference to `yylineno'
>>> /local/kader/home/MonetDB_XQuery_CVS/build/buildtools/_MEL/mel.yy:67: 
>>> undefined reference to `yylineno'
>>> /local/kader/home/MonetDB_XQuery_CVS/build/buildtools/_MEL/mel.yy:131: 
>>> undefined reference to `yylineno'
>>> mel.yy.o:/local/kader/home/MonetDB_XQuery_CVS/build/buildtools/_MEL/mel.ll:253: 
>>> more undefined references to `yylineno' follow
>>> collect2: ld returned 1 exit status
>>> make[2]: *** [mel] Error 1
>>> make[2]: Leaving directory 
>>> `/local/kader/home/MonetDB_XQuery_CVS/build/buildtools/_MEL'
>>> make[1]: *** [all] Error 2
>>> make[1]: Leaving directory 
>>> `/local/kader/home/MonetDB_XQuery_CVS/build/buildtools/_MEL'
>>> make: *** [all] Error 2
>>> ===========================================================================
>>>
>>> The flex and bison versions I have are 2.5.33 and 2.3 respectively.
>>> I was advised by Jan Flokstra to report the error to you. I hope you 
>>> have sufficient information to know the origin of the problem, if not 
>>> please let me know.
>>>
>>> Thank you for your help,
>>> Riham Abdel Kader.
>>>       
>> As of flex 2.5.31 the yylineno was defined by flex. Normaly we define
>> it our selfs.
>>
>> You could try to patch the following line from mel.mx
>>
>> #if !defined(YY_FLEX_SUBMINOR_VERSION) || YY_FLEX_SUBMINOR_VERSION < 5
>> /* flex 2.5.31 declares yylineno.  I don't know which other versions
>>    do as well. */
>> int yylineno;
>> #endif
>>
>> Simply removed the #if/#endif should work. A better solution is to know
>> which range between 2.5.6 and 2.5.31/32 have a yylineno defined. And
>> fix the second part of the #ifdef.
>>
>> Niels
>>     
>
>
> Niels, Riham,
>
> I haven't analysed the problem any further, yet, but I think it might also
> be related to bison 2.3 or the combination of bison 2.3 and flex 2.5.33. In
> out nightly testing pool (cf., http://monetdb.cwi.nl/Development/TestWeb/),
> we use flex 2.5.4 & flex 2.5.33 and bison 1.875, 2.0, 2.1, 2.2, and
> everything works fine. We don't use bison 2.3, yet ...
>
> Riham,
>
> which linux distribution (name & version) are you using?
>
> Does Niels' patch work for you?
>
>
> Stefan
>
>   




More information about the developers-list mailing list