Compiling kjBuckets for Win32 & Python20

Tom nospam at nospam.com
Mon Oct 23 10:40:42 EDT 2000


Some Linux users asked me to compile kjBuckets for them on Win32.
I've run into the following problems.  Any help is appreciated.

I got version 2.2 of kjBuckets.

It includes a header 'rename2.h' which I found in the Python 152 source, but
not in Python 2.0 - so I just used the old one.

I'm getting lots of errors and warnings, let me start by commenting on these
2:

For the following line (#160):  enum GState { UNKNOWN, FREE, ROOT,
OVERFLOW };
What are these constants?  Only OVERFLOW is defined on my system.  The
compiler reports: "syntax error : 'constant'".

And the line: (#3295): OB_HEAD_INIT(&Typetype)
Causes the compiler to report: "initializer is not a constant".
'TypeType' is defined in that rename2.h header file (above) as PyType_Type
which is imported from the Python DLL, so it can't be treated as a constant.
I believe I've seen this before - the value will need to be set during
module initialization.  But before I get into that I wanted to ask 'is this
legal in GCC?'  Is this legal in ANSI-C?  Or does this relate to the
differences between Linux's .so files and windows' DLL's?

Tom.






More information about the Python-list mailing list