Re: having a hard time compling moto_0.18 on freebsd

David Hakim <dhakim-Gkm/TONP9n1Wk0Htik3J/[email protected]> Tue, 4 Mar 2003 17:02:28 -0500
Newsgroups gmane.comp.lang.moto.user
Message-ID <[email protected]>
Interesting ... I wonder if we are running into multiple FreeBSD 
compile problems here. I notice that on like 652 there is a

$$=$2

not followed by a semicolon. I wonder if the FreeBSD compiler is being 
pedantic about this. Do adding semicolons at the end of lines with that 
sort of syntax error reported fix the problem ?

-Dave

On Tuesday, March 4, 2003, at 04:50  PM, Jack wrote:

> Oh, heh, yeah I had that issue on my linux box to, I just removed the
> line was all, no big issue I thought.  Now I know to report that stuff 
> I
> guess ;).
>
> As far as compiling AFTER the make clean, it still fails.  I'll get out
> my C books and such, but I doubt it like hell if I'll figure anything
> out on it.
> The error after the make clean:
>
> bison -d moto.y
> flex -I moto.l
> gcc -I. -I/opt/jax/moto_0_18_0 -DHAVE_RCONFIG_H
> -I/opt/jax/moto_0_18_0/include -DHAVE_CONFIG_H -g -O2 -Wall -c lex.yy.c
> -o lex.yy.o
> gcc -I. -I/opt/jax/moto_0_18_0 -DHAVE_RCONFIG_H
> -I/opt/jax/moto_0_18_0/include -DHAVE_CONFIG_H -g -O2 -Wall -c
> moto.tab.c -o moto.tab.o
> moto.tab.c: In function `yyparse':
> moto.tab.c:3129: warning: implicit declaration of function `yylex'
> moto.y:652: syntax error before `}'
> moto.y:653: syntax error before `}'
> moto.y:720: syntax error before `}'
> moto.y:722: syntax error before `}'
> moto.y:900: syntax error before `}'
> moto.y:901: syntax error before `}'
> moto.y:1223: syntax error before `}'
> moto.y:1225: syntax error before `}'
> moto.y:1227: syntax error before `}'
> moto.y:1233: syntax error before `}'
> moto.y:1257: syntax error before `static'
> moto.y:1279: `p' undeclared (first use in this function)
> moto.y:1279: (Each undeclared identifier is reported only once
> moto.y:1279: for each function it appears in.)
> moto.y:1279: `env' undeclared (first use in this function)
> moto.y:1281: `value' undeclared (first use in this function)
> moto.y:1285: `svs' undeclared (first use in this function)
> moto.y:1293: syntax error before `static'
> moto.y:1299: `n' undeclared (first use in this function)
> moto.y:1318: syntax error before `static'
> moto.y:1328: warning: unreachable code at beginning of switch statement
> moto.y:1385: warning: control reaches end of non-void function
> moto.y: At top level:
> moto.y:78: warning: `nullcell' used but never defined
> moto.y:79: warning: `b' used but never defined
> moto.y:80: warning: `c' used but never defined
> moto.y:91: warning: `IVSMetaInfo' used but never defined
> moto.y:92: warning: `SVSMetaInfo' used but never defined
> moto.y:93: warning: `UCMetaInfo' used but never defined
> *** Error code 1
>
> Stop in /opt/jax/moto_0_18_0/src/moto.
> *** Error code 1
>
> Stop in /opt/jax/moto_0_18_0.
>
>
> So it's identical.  I'l try upgrading gcc and see if that helps.
>
>
>
> Oh, as far as joining the devel-list and becoming your BSD tester, 
> sure,
> I'll do that.  Be my first time to help on a project, that's rather
> exciting.  Hell I have some a couple of them, Im sure I can do 
> something
> ;)
>
> thanks,
> Jack
>
>
> On Tue, 2003-03-04 at 14:31, David Hakim wrote:
>> Wow ... I'm surprised that ever worked! Thanks for finding this :)
>> After removing the second
>>
>> %token <ivs> ECONTINUE
>>
>> on line 188 of moto.y you should just be able to 'make clean' and then
>> 'make' and everything should be fine. The reason you need to 'make
>> clean' first is that bison writes out a moto.tab.h file that uses that
>> %token information which is included by the lexer which had already
>> been built before you continued the make.
>>
>> Thanks again for finding this one!
>> -Dave
>>
>> On Tuesday, March 4, 2003, at 04:07  PM, Jack wrote:
>>
>>> Every runs fine with this config:
>>>
>>> ./configure --with-apache --with-mysql=/usr/local
>>>
>>> make give this:
>>> moto.y:194.14-22: type redeclaration for ECONTINUE
>>> *** Error code 1
>>>
>>> Okay, so i remove the extra type declaration, and run make again, 
>>> and I
>>> get...
>>>
>>> touch timestamp;
>>> Making all in src/codex
>>> Making all in src/moto
>>> bison -d moto.y
>>> flex -I moto.l
>>> gcc -I. -I/opt/jax/moto_0_18_0 -DHAVE_RCONFIG_H
>>> -I/opt/jax/moto_0_18_0/include -DHAVE_CONFIG_H -g -O2 -Wall -c 
>>> lex.yy.c
>>> -o lex.yy.o
>>> gcc -I. -I/opt/jax/moto_0_18_0 -DHAVE_RCONFIG_H
>>> -I/opt/jax/moto_0_18_0/include -DHAVE_CONFIG_H -g -O2 -Wall -c
>>> moto.tab.c -o moto.tab.o
>>> moto.tab.c: In function `yyparse':
>>> moto.tab.c:3129: warning: implicit declaration of function `yylex'
>>> moto.y:652: syntax error before `}'
>>> moto.y:653: syntax error before `}'
>>> moto.y:720: syntax error before `}'
>>> moto.y:722: syntax error before `}'
>>> moto.y:900: syntax error before `}'
>>> moto.y:901: syntax error before `}'
>>> moto.y:1223: syntax error before `}'
>>> moto.y:1225: syntax error before `}'
>>> moto.y:1227: syntax error before `}'
>>> moto.y:1233: syntax error before `}'
>>> moto.y:1257: syntax error before `static'
>>> moto.y:1279: `p' undeclared (first use in this function)
>>> moto.y:1279: (Each undeclared identifier is reported only once
>>> moto.y:1279: for each function it appears in.)
>>> moto.y:1279: `env' undeclared (first use in this function)
>>> moto.y:1281: `value' undeclared (first use in this function)
>>> moto.y:1285: `svs' undeclared (first use in this function)
>>> moto.y:1293: syntax error before `static'
>>> moto.y:1299: `n' undeclared (first use in this function)
>>> moto.y:1318: syntax error before `static'
>>> moto.y:1328: warning: unreachable code at beginning of switch 
>>> statement
>>> moto.y:1385: warning: control reaches end of non-void function
>>> moto.y: At top level:
>>> moto.y:78: warning: `nullcell' used but never defined
>>> moto.y:79: warning: `b' used but never defined
>>> moto.y:80: warning: `c' used but never defined
>>> moto.y:91: warning: `IVSMetaInfo' used but never defined
>>> moto.y:92: warning: `SVSMetaInfo' used but never defined
>>> moto.y:93: warning: `UCMetaInfo' used but never defined
>>> *** Error code 1
>>>
>>> Stop in /opt/jax/moto_0_18_0/src/moto.
>>> *** Error code 1
>>>
>>> Stop in /opt/jax/moto_0_18_0.
>>>
>>>
>>> Okay, I don't know what to do here.  I looked at line 652 where it 
>>> was
>>> moaning about it, and that looks fine to me, so I don't know.
>>>
>>> I thought maybe when I removed that ECONTINUE type declaration, I
>>> screwed something up, so I removed the motodir, and untarred the moto
>>> distribution again, and ended up with the same results.
>>>
>>> Which way is out?
>>>
>>> Thanks,
>>> Jack
>>>
>>>
>
>