I've successfully built and tested ORBit-Python on Windows NT using
cpplover's preliminary Windows port of ORBit.
I've tested the following combinations with the fruit example:
Windows server <-> Windows client (local machine)
Windows server <-> Linux client (via ethernet)
I still haven't gotten a server running on the Linux machine to respond to
requests from a Windows client. (This is likely a problem with ORBit rather
than the Python binding).
My Python is the standard 1.5.2 Windows install. The ORBit port is available
at the main ORBit page, http://www.labs.redhat.com/orbit/. (I fixed a few
minor bugs and recompiled it with gcc before bringing up ORBit-Python;
nevertheless it might simply work out of the box).
I only needed to make one trivial change to ORBit-Python. In marshal.c,
SystemExcept_SubTypes[0] is initialized to a symbol exported from the ORBit
library. On Windows, you can't initialize a variable to a value defined
outside of the executable. To work around this, I changed the compile-time
definition to:
CORBA_TypeCode SystemExcept_SubTypes[] = {
NULL, &Status_TypeCode
};
and then I simply assign the missing value in initCORBA():
SystemExcept_SubTypes[0] = (CORBA_TypeCode)TC_CORBA_ulong;
Everything else compiled without a single warning! Kudos to Mr. Tackaberry
for this wonderful piece of code.
Dan Maas
(apologies if this is old news =)
|