Discussion:
Newbie saying hi!
Peter Seebach
2007-01-21 04:17:13 UTC
Permalink
Howdy! I am interested in kicking winex around. I have a very
specific goal: I want to extend/improve support for function keys.
So far as I can tell, Windows natively supports F1-F24, and X supports
even more. Still, if I could even get 13-24 working, and possibly
some hack to make F25-F35 do SOMETHING anyway, I would be happy.

So far, I'm at the "can't even get it to build" state. I ran configure
and make just to make sure a clean CVS checkout would work. I get:

[...]
flex -Cf -d -Ppp -8 -olex.ppl.c ./ppl.l
stdin:13889: m4: Warning: Excess arguments to built-in `m4_ifdef' ignored
gcc -MMD -c -I. -I. -I../../include -I../../include -g -O2 -Wall -mpreferred-stack-boundary=2 -fno-keep-static-consts -D__const=const -fno-strict-aliasing -Wa,--execstack -D__int8=char -D__int16=short -D__int32=int "-D__int64=long long" -D__WINE__ -D_REENTRANT -I/usr/X11R6/include -o lex.ppl.o lex.ppl.c
./ppl.l:81:1: warning: "/*" within comment
./ppl.l: In function 'pplex':
./ppl.l:305: error: 'seen_junk' undeclared (first use in this function)
./ppl.l:305: error: (Each undeclared identifier is reported only once
./ppl.l:305: error: for each function it appears in.)
./ppl.l:305: error: 'pp_pp' undeclared (first use in this function)

The error at line "81" is really that the huge comment at the beginning
of ppl.l gets truncated at line 80; it finishes:

* arglist :=
* | {id}
* | {arglist}

and then just goes straight into the lex-generated code. No idea why;
the cutoff is about 1764 bytes into the file, so it's not just that the
comment got truncated to a convenient power of two or something.

The error at line "305" looks to be legit, by contrast; there is indeed
no declaration in sight of "seen_junk". Many of the other errors go
away if I close the comment manually, but not all.

Any suggestions? Did I just get bit rot when checking out? Should I
have specified a particular revision when checking out? The instructions
I used were from:

http://www.transgaming.com/sources.php

and the checkout command was just:

cvs -z3 -d:pserver:***@cvs.transgaming.org:/cvsroot co winex

It seemed to run without errors. Any advice welcome. I could probably
make this build, but any time something this odd happens during a build,
my first guess is that there's an underlying assumption I need to check.

-s
Daniel Koch
2007-02-14 18:56:04 UTC
Permalink
Hi Peter,

Typically these errors are caused by an incompatible version of flex.
You may want to check if your distro provides a package called
"flex-old" and install that instead. You will need to do a make clean,
reconfigure and recompile after this.

Note that you'll also likely have better luck with something other than
the latest version of gcc (3.3 is recommended, although 4.0 should work
as well).

Hope this helps,
Daniel
Post by Peter Seebach
Howdy! I am interested in kicking winex around. I have a very
specific goal: I want to extend/improve support for function keys.
So far as I can tell, Windows natively supports F1-F24, and X supports
even more. Still, if I could even get 13-24 working, and possibly
some hack to make F25-F35 do SOMETHING anyway, I would be happy.
So far, I'm at the "can't even get it to build" state. I ran configure
[...]
flex -Cf -d -Ppp -8 -olex.ppl.c ./ppl.l
stdin:13889: m4: Warning: Excess arguments to built-in `m4_ifdef' ignored
gcc -MMD -c -I. -I. -I../../include -I../../include -g -O2 -Wall -mpreferred-stack-boundary=2 -fno-keep-static-consts -D__const=const -fno-strict-aliasing -Wa,--execstack -D__int8=char -D__int16=short -D__int32=int "-D__int64=long long" -D__WINE__ -D_REENTRANT -I/usr/X11R6/include -o lex.ppl.o lex.ppl.c
./ppl.l:81:1: warning: "/*" within comment
./ppl.l:305: error: 'seen_junk' undeclared (first use in this function)
./ppl.l:305: error: (Each undeclared identifier is reported only once
./ppl.l:305: error: for each function it appears in.)
./ppl.l:305: error: 'pp_pp' undeclared (first use in this function)
The error at line "81" is really that the huge comment at the beginning
* arglist :=
* | {id}
* | {arglist}
and then just goes straight into the lex-generated code. No idea why;
the cutoff is about 1764 bytes into the file, so it's not just that the
comment got truncated to a convenient power of two or something.
The error at line "305" looks to be legit, by contrast; there is indeed
no declaration in sight of "seen_junk". Many of the other errors go
away if I close the comment manually, but not all.
Any suggestions? Did I just get bit rot when checking out? Should I
have specified a particular revision when checking out? The instructions
http://www.transgaming.com/sources.php
It seemed to run without errors. Any advice welcome. I could probably
make this build, but any time something this odd happens during a build,
my first guess is that there's an underlying assumption I need to check.
-s
--
Daniel Koch -+- Cedega Development Lead -+- TransGaming Technologies
***@transgaming.com +1 613.244.1111 x352 www.transgaming.com
55 Byward Market, 2nd floor, Ottawa, ON Canada K1N 9C3
Loading...