Discussion:
[omniORB] How to compile omniorbpy 3 on Windows?
Olaf Meding
2006-12-03 05:01:21 UTC
Permalink
Q1. How do I compile omniorbpy 3.0 on Windows? The readme.txt file
seems to talk only about how to do this on Unix. Unfortenuately, I
can not use the binary because I need to use Python 2.3.5. (not Python
2.4).

Would it be enough to copy the omniorbpy source code to top\src\lib
and then execute a "make export" in top\src? Or perhaps a "make
export" in top\src\lib\omniORBpy-3.0?

Q2. I assume I can not use the omniorb Python to compile omniorbpy?

I am using VS .NET 2003 (VS 7) on W2K.


Many thanks for your help.

Olaf
Duncan Grisby
2006-12-05 13:18:25 UTC
Permalink
Post by Olaf Meding
Q1. How do I compile omniorbpy 3.0 on Windows? The readme.txt file
seems to talk only about how to do this on Unix. Unfortenuately, I
can not use the binary because I need to use Python 2.3.5. (not Python
2.4).
It says this in README.txt:

"
If you do not have Autoconf support on your platform, you must install
the omniORBpy source in the $TOP/src/lib directory of a working
omniORB 4.1 tree. Then, in the $TOP/src/lib/omniORBpy directory,
simply do a gnumake export.
"
Post by Olaf Meding
Would it be enough to copy the omniorbpy source code to top\src\lib
and then execute a "make export" in top\src? Or perhaps a "make
export" in top\src\lib\omniORBpy-3.0?
Yes, you should do make export in the omniORBpy directory, in the same
tree you set up for building omniORB. What goes wrong when you do? The
same cl issue, or did you fix that?
Post by Olaf Meding
Q2. I assume I can not use the omniorb Python to compile omniorbpy?
Well, you can, but that's not what you want because the omniORB minimal
Python is an ancient Python 1.5.2.

Cheers,

Duncan.
--
-- Duncan Grisby --
-- ***@grisby.org --
-- http://www.grisby.org --
Meding, Olaf
2006-12-06 01:33:31 UTC
Permalink
Yes, you should do make export in the omniORBpy directory, in the same
tree you set up for building omniORB. What goes wrong when you do?
Was able to build omniORB 4.1.0 using VC7 on WXP.
Then copied the omniORBpy 3.0 source code to
C:\omniORB-4.1.0\src\lib\omniORBpy-3.0.
Then cd'ed into the omniORBpy-3.0 directory.
Then did a 'make export' and got the below error.

Olaf

C:\omniORB-4.1.0\src\lib\omniORBpy-3.0>make export making export in
src/lib/omniORBpy/modules...
make[1]: Entering directory
`/cygdrive/c/omniORB-4.1.0/src/lib/omniORBpy-3.0/modules'
../../../../bin/x86_win32/omkdepend -D__cplusplus -D_MSC_VER
-DOMNIPY_MAJOR=3 -DOMNIPY_MINOR=0
-I../../../../src/lib/omniORBpy/modules/../include -I../../../../include
-I../../../../include/om niORB4/internal -Ic:/bn/python23/include
-Ic:/bn/python23/include/python2.3 -DPYTHON_INCLUDE=<Python.h>
-DPYTHON_THREAD_INC=<pythread.h> -I. -I. -I../../../../include
-D__WIN32__ -D_WIN32_WINN T=0x0400 -D__x86__ -D__NT__ -D__OSVERSION__=4
cxxAPI.cc pyInterceptors.cc pyAbstractIntf.cc pyValueType.cc
pyContext.cc pyFixed.cc pyomniFunc.cc pyThreadCache.cc pyTypeCode.cc
pyMarshal.cc pyE xceptions.cc pyLocalObjects.cc pyServant.cc
pyCallDescriptor.cc pyObjectRef.cc pyPOACurrentFunc.cc
pyPOAManagerFunc.cc pyPOAFunc.cc pyORBFunc.cc omnipy.cc
../../../../bin/x86_win32/omkdepend: warning: cxxAPI.cc, line 165:
unknown directive == "#warning "Please use an up-to-date version of gcc!
(>2.91 recommended)""
/cygdrive/c/bn/Python23/python ../../../../bin/scripts/distdate.py
OMNIORBPY <../update.log >pydistdate.hh
+ install -c pydistdate.hh ../../../../include/omniORB4
../../../../bin/x86_win32/clwrapper -gnuwin32 -c -O2 -MD -EHs -GS -GR
-Zi -nologo -DOMNIPY_MAJOR=3 -DOMNIPY_MINOR=0
-I../../../../src/lib/omniORBpy/modules/../include -I../../../../include
-
I../../../../include/omniORB4/internal -I"c:/bn/python23"/include
-I"c:/bn/python23"/include/python2.3 -DPYTHON_INCLUDE="<Python.h>"
-DPYTHON_THREAD_INC="<pythread.h>" -I. -I. -I../../../../in clude
-D__WIN32__ -D_WIN32_WINNT=0x0400 -D__x86__ -D__NT__ -D__OSVERSION__=4
-Foomnipy.o omnipy.cc cl -c -O2 -MD -EHs -GS -GR -Zi -nologo
-DOMNIPY_MAJOR=3 -DOMNIPY_MINOR=0
-I..\..\..\..\src\lib\omniORBpy\modules\..\include -I..\..\..\..\include
-I..\..\..\..\include\omniORB4\internal -Ic:\b n\python23\include
-Ic:\bn\python23\include\python2.3 -DPYTHON_INCLUDE=<Python.h>
-DPYTHON_THREAD_INC=<pythread.h> -I. -I. -I..\..\..\..\include
-D__WIN32__ -D_WIN32_WINNT=0x0400 -D__x86__ -D_ _NT__ -D__OSVERSION__=4
-Foomnipy.o -Tpomnipy.cc omnipy.cc
..\..\..\..\include\omniORB4\CORBA_sysdep_trad.h(129) : warning C4005:
'HAVE_STRFTIME' : macro redefinition
c:\bn\Python23\include\pyconfig.h(38) : see previous definition
of 'HAVE_STRFTIME'
omnipy.h(137) : fatal error C1083: Cannot open include file:
'omniORBpy.h': No such file or directory
make[1]: *** [omnipy.o] Error 2
make[1]: Leaving directory
`/cygdrive/c/omniORB-4.1.0/src/lib/omniORBpy-3.0/modules'
make: *** [export] Error 2

C:\omniORB-4.1.0\src\lib\omniORBpy-3.0>
Meding, Olaf
2006-12-06 02:24:46 UTC
Permalink
Okay the problem of my previous post was that the omniORBpy-3.0.tar.gz
unzipps to "omniORBpy-3.0". I renamed that directory to omniORBpy" and
the "make export" got much further, but still failing with the error
below.

Olaf

Listing . ...
Compiling .\BiDirPolicy.py ...
Compiling .\CORBA.py ...
Compiling .\PortableServer.py ...
Compiling .\PortableServer__POA.py ...
Compiling .\URI.py ...
Compiling .\__init__.py ...
Compiling .\any.py ...
Compiling .\boxes_idl.py ...
Compiling .\codesets.py ...
Compiling .\corbaidl_idl.py ...
Compiling .\interceptors.py ...
Compiling .\ir_idl.py ...
Compiling .\minorCodes.py ...
Compiling .\omniConnectionMgmt.py ...
Compiling .\tcInternal.py ...
make[2]: Leaving directory
`/cygdrive/c/omniORB-4.1.0/src/lib/omniORBpy/python/omniORB'
making export in src/lib/omniORBpy/python/COS...
make[2]: Entering directory
`/cygdrive/c/omniORB-4.1.0/src/lib/omniORBpy/python/COS'
dir.mk:50: *** commands commence before first target. Stop.
make[2]: Leaving directory
`/cygdrive/c/omniORB-4.1.0/src/lib/omniORBpy/python/COS'
make[1]: *** [export] Error 2
make[1]: Leaving directory
`/cygdrive/c/omniORB-4.1.0/src/lib/omniORBpy/python'
make: *** [export] Error 2

C:\omniORB-4.1.0\src\lib\omniORBpy>
Meding, Olaf
2006-12-06 02:42:43 UTC
Permalink
Found the problem and omniORBpy now compiles on Windows using VC7.

The problem was that this file:
omniORB-4.1.0/src/lib/omniORBpy/python/COS/dir.mk
contains tab characters below the line that start with "IDLFILES =".

I removed those tab characters and it compiled.

Olaf
Duncan Grisby
2006-12-06 16:30:31 UTC
Permalink
Post by Meding, Olaf
Okay the problem of my previous post was that the omniORBpy-3.0.tar.gz
unzipps to "omniORBpy-3.0". I renamed that directory to omniORBpy" and
the "make export" got much further, but still failing with the error
below.
Sorry, that important step was not in the documentation. The directory
does have to be called omniORBpy for the build to work. I'll update the
documentation.

Cheers,

Duncan.
--
-- Duncan Grisby --
-- ***@grisby.org --
-- http://www.grisby.org --
Duncan Grisby
2006-12-06 16:32:39 UTC
Permalink
Post by Meding, Olaf
Found the problem and omniORBpy now compiles on Windows using VC7.
omniORB-4.1.0/src/lib/omniORBpy/python/COS/dir.mk
contains tab characters below the line that start with "IDLFILES =".
I removed those tab characters and it compiled.
I'm confused. On exactly which line are the tab characters that are
causing a problem? I can't find any tabs in that file that are in an
invalid place, only in continuation lines where whitespace isn't
significant, and in rules where there have to be tabs.

What version of make are you using?

Cheers,

Duncan.
--
-- Duncan Grisby --
-- ***@grisby.org --
-- http://www.grisby.org --
Meding, Olaf
2006-12-06 21:30:41 UTC
Permalink
Duncan
On exactly which line are the tab characters that are causing a
problem?

All the lines below IDFILES hava a tab character followed by 3 spaces.
Here are the first few ...
IDLFILES = CosCollection.idl \
CosCompoundLifeCycle.idl \
CosContainment.idl CosEventChannelAdmin.idl \

The error I got was (notice the "dir.mk:50"):
Compiling .\tcInternal.py ...
make[2]: Leaving directory
`/cygdrive/c/omniORB-4.1.0/src/lib/omniORBpy/python/omniORB'
making export in src/lib/omniORBpy/python/COS...
make[2]: Entering directory
`/cygdrive/c/omniORB-4.1.0/src/lib/omniORBpy/python/COS'
dir.mk:50: *** commands commence before first target. Stop.
make[2]: Leaving directory
`/cygdrive/c/omniORB-4.1.0/src/lib/omniORBpy/python/COS'
make[1]: *** [export] Error 2
make[1]: Leaving directory
`/cygdrive/c/omniORB-4.1.0/src/lib/omniORBpy/python'
make: *** [export] Error 2

I attached the omniORB-4.1.0/src/lib/omniORBpy/python/COS/dir.mk file.
It came from omniORBpy-3.0.tar.gz.

I used the omniorb cygwin to compile omniORB and omniORBpy using VC7 on
WXP.


Hope this helps.

Olaf
-------------- next part --------------
A non-text attachment was scrubbed...
Name: dir.mk
Type: application/octet-stream
Size: 4796 bytes
Desc: dir.mk
Url : http://www.omniorb-support.com/pipermail/omniorb-list/attachments/20061206/e1145b35/dir.obj
Loading...