Discussion:
[omniORB] Building on Windows 7 for 32-bit ...
Marcus MacWilliam
2013-01-24 15:28:14 UTC
Permalink
All,

Background: In 2002, using OmniORB 4.0.0 we wrote a
CORBA Server for a customer in America, running on an
NT 4 machine. It has been running nicely now for 10+ years.

They have recently got in contact, and want us to update
to Windows 7. Our Native dll is built on Windows 7 in 32-bit,
using Visual Studio 10, so hopefully it is not too bad a job to
upgrade.

I have downloaded OmniORB 4.1.6 from here<http://sourceforge.net/projects/omniorb/files/omniORB/omniORB-4.1.6/omniORB-4.1.6-win64-vc10-py27.zip/download>.
I have downloaded Python 2.7.3 from here<http://www.python.org/ftp/python/2.7.3/python-2.7.3.msi>.

I have setup an environment, with VS10 in x86 (32-bit) mode.

I am trying to build the required modules, which in the makefile
calls omniidl to generate the stubs:

Running command: C:\omniORB-4.1.6\bin\x86_win32\omniidl -bcxx -C\\gothic-samba\gothic\src\gijeprog\win7-devt -Wbh=_s.h -Wbs=_s.cpp \\gothic-samba\gothic\src\gijeprog\win7-devt\OO-Toolkit.idl

This fails with a system error, saying it cannot locate and
load python27.dll. However this dll is not supplied in either
the omniorb-4.1.6 directory, or the python27 directory.

Can anyone explain why omniidl needs a dll that does not come
with either the ORB package, or the version of Python.

Can anyone suggest how I resolve this issue.

This is fairly urgent, so any help is greatly appreciated.

Cheers,

--
Marcus A.T MacWilliam, Senior Software Engineer. 1Spatial Ltd.
Tel: +44 (0)1223 420414, ext 2289, Mob: +44 (0)7803 706597.
E-Mail: marcus.macwilliam at 1spatial.com<mailto:marcus.macwilliam at 1spatial.com> Skype:marcus.macwilliam

Tennyson House, 7 Cambridge Business Park, Cambridge, CB4 0WZ.
Registered in England No. 4785688, VAT Reg. No. 135539408.
Website: http://www.1spatial.com/ E-mail: info at 1spatial.com<mailto:info at 1spatial.com>

[Loading Image...]<http://www.1spatial.com>





[Loading Image...]<http://www.youtube.com/user/1SpatialGroup> [Loading Image...] <https://www.facebook.com/1Spatial> [Loading Image...] <http://www.linkedin.com/company/1spatial> [Loading Image...] <http://www.twitter.com/1spatial>

________________________________

The information in this e-mail is confidential and may be legally privileged. It is intended solely for the addressee. Access to this email by anyone else is unauthorised. Any views or opinions expressed in this e-mail may be solely those of the author and are not necessarily those of 1Spatial Plc. This email has been scanned for viruses and message content. 1Spatial Group Limited is a company registered in England and Wales No.4785688. Registered Office: Tennyson House, Cambridge Business Park, Cambridge CB4 0WZ
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.omniorb-support.com/pipermail/omniorb-list/attachments/20130124/db2f3ae2/attachment.html>
Marcus MacWilliam
2013-01-24 16:35:21 UTC
Permalink
All,

OK I found the python27.dll in the C:\Windows\SysWOW64
directory, which suggests both OmniORB and Python are
the 64-bit versions.

I need 32-bit versions, as omniidl now errors with a
"Failed to start correctly" message when I add the above
directory to my PATH.

I am using the downloaded ZIP file, because when I downloaded
the complete source, and attempted to build on my machine I got:

C:\omniORB\src>make export
making export in src/tool...
make[1]: Entering directory `/cygdrive/c/omniORB/src/tool'
making export in src/tool/omniidl...
make[2]: Entering directory `/cygdrive/c/omniORB/src/tool/omniidl'
making export in src/tool/omniidl/cxx...
make[3]: Entering directory `/cygdrive/c/omniORB/src/tool/omniidl/cxx'
make[3]: *** No rule to make target `/c/omniorb/include/omniORB4/CORBA_sysdep.h', needed by `idlc.d'
. Stop.
make[3]: Leaving directory `/cygdrive/c/omniORB/src/tool/omniidl/cxx'
make[2]: *** [export] Error 2
make[2]: Leaving directory `/cygdrive/c/omniORB/src/tool/omniidl'
make[1]: *** [export] Error 2
make[1]: Leaving directory `/cygdrive/c/omniORB/src/tool'
make: *** [export] Error 2


Marcus A.T MacWilliam, Senior Software Engineer. 1Spatial Ltd.
Tel: +44 (0)1223 420414, ext 2289, Mob: +44 (0)7803 706597.
E-Mail: marcus.macwilliam at 1spatial.com<mailto:marcus.macwilliam at 1spatial.com> Skype:marcus.macwilliam

Tennyson House, 7 Cambridge Business Park, Cambridge, CB4 0WZ.
Registered in England No. 4785688, VAT Reg. No. 135539408.
Website: http://www.1spatial.com/ E-mail: info at 1spatial.com<mailto:info at 1spatial.com>

On 24/01/13 15:28, Marcus MacWilliam wrote:
All,

Background: In 2002, using OmniORB 4.0.0 we wrote a
CORBA Server for a customer in America, running on an
NT 4 machine. It has been running nicely now for 10+ years.

They have recently got in contact, and want us to update
to Windows 7. Our Native dll is built on Windows 7 in 32-bit,
using Visual Studio 10, so hopefully it is not too bad a job to
upgrade.

I have downloaded OmniORB 4.1.6 from here<http://sourceforge.net/projects/omniorb/files/omniORB/omniORB-4.1.6/omniORB-4.1.6-win64-vc10-py27.zip/download>.
I have downloaded Python 2.7.3 from here<http://www.python.org/ftp/python/2.7.3/python-2.7.3.msi>.

I have setup an environment, with VS10 in x86 (32-bit) mode.

I am trying to build the required modules, which in the makefile
calls omniidl to generate the stubs:

Running command: C:\omniORB-4.1.6\bin\x86_win32\omniidl -bcxx -C\\gothic-samba\gothic\src\gijeprog\win7-devt -Wbh=_s.h -Wbs=_s.cpp \\gothic-samba\gothic\src\gijeprog\win7-devt\OO-Toolkit.idl

This fails with a system error, saying it cannot locate and
load python27.dll. However this dll is not supplied in either
the omniorb-4.1.6 directory, or the python27 directory.

Can anyone explain why omniidl needs a dll that does not come
with either the ORB package, or the version of Python.

Can anyone suggest how I resolve this issue.

This is fairly urgent, so any help is greatly appreciated.

Cheers,

--
Marcus A.T MacWilliam, Senior Software Engineer. 1Spatial Ltd.
Tel: +44 (0)1223 420414, ext 2289, Mob: +44 (0)7803 706597.
E-Mail: marcus.macwilliam at 1spatial.com<mailto:marcus.macwilliam at 1spatial.com> Skype:marcus.macwilliam

Tennyson House, 7 Cambridge Business Park, Cambridge, CB4 0WZ.
Registered in England No. 4785688, VAT Reg. No. 135539408.
Website: http://www.1spatial.com/ E-mail: info at 1spatial.com<mailto:info at 1spatial.com>

[http://www.1spatial.com/signatures/1SpatialLogo_Small.jpg]<http://www.1spatial.com>





[http://www.1spatial.com/wp-content/themes/1spatial/images/youtube.png]<http://www.youtube.com/user/1SpatialGroup> [http://www.1spatial.com/wp-content/themes/1spatial/images/facebook.png] <https://www.facebook.com/1Spatial> [http://www.1spatial.com/wp-content/themes/1spatial/images/linkedIn.png] <http://www.linkedin.com/company/1spatial> [http://www.1spatial.com/wp-content/themes/1spatial/images/twitter.png] <http://www.twitter.com/1spatial>

________________________________

The information in this e-mail is confidential and may be legally privileged. It is intended solely for the addressee. Access to this email by anyone else is unauthorised. Any views or opinions expressed in this e-mail may be solely those of the author and are not necessarily those of 1Spatial Plc. This email has been scanned for viruses and message content. 1Spatial Group Limited is a company registered in England and Wales No.4785688. Registered Office: Tennyson House, Cambridge Business Park, Cambridge CB4 0WZ



_______________________________________________
omniORB-list mailing list
omniORB-list at omniorb-support.com<mailto:omniORB-list at omniorb-support.com>
http://www.omniorb-support.com/mailman/listinfo/omniorb-list


[http://www.1spatial.com/signatures/1SpatialLogo_Small.jpg]<http://www.1spatial.com>





[http://www.1spatial.com/wp-content/themes/1spatial/images/youtube.png]<http://www.youtube.com/user/1SpatialGroup> [http://www.1spatial.com/wp-content/themes/1spatial/images/facebook.png] <https://www.facebook.com/1Spatial> [http://www.1spatial.com/wp-content/themes/1spatial/images/linkedIn.png] <http://www.linkedin.com/company/1spatial> [http://www.1spatial.com/wp-content/themes/1spatial/images/twitter.png] <http://www.twitter.com/1spatial>

________________________________

The information in this e-mail is confidential and may be legally privileged. It is intended solely for the addressee. Access to this email by anyone else is unauthorised. Any views or opinions expressed in this e-mail may be solely those of the author and are not necessarily those of 1Spatial Plc. This email has been scanned for viruses and message content. 1Spatial Group Limited is a company registered in England and Wales No.4785688. Registered Office: Tennyson House, Cambridge Business Park, Cambridge CB4 0WZ
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.omniorb-support.com/pipermail/omniorb-list/attachments/20130124/3140d864/attachment-0001.html>
Duncan Grisby
2013-01-24 16:51:25 UTC
Permalink
I have downloaded OmniORB 4.1.6 from here.
The link you give is for a 64 bit build of omniORB. There isn't a 32 bit
build available so you have to get the source and compile it.
I have downloaded Python 2.7.3 from here.
I think that's the 32 bit Python installer.

You should download the omniORB source from here:

http://sourceforge.net/projects/omniorb/files/omniORB/omniORB-4.1.6/omniORB-4.1.6.tar.bz2/download

and the 32-bit Python from here:

http://www.python.org/ftp/python/2.7.3/python-2.7.3.msi

Install a recent cygwin, then build according to the instructions in
README.win32.txt. Make sure your path is set up right for the 32 bit
compiler. The easiest way to do that is to use Start -> All Programs ->
Microsoft Visual Studio -> Visual Studio Tools -> Visual Studio Command
Prompt. That makes sure your environment is set for the right tools.

Duncan.
--
-- Duncan Grisby --
-- duncan at grisby.org --
-- http://www.grisby.org --
Marcus MacWilliam
2013-01-24 18:49:39 UTC
Permalink
Duncan,

I have installed the version of python as per your link,
this is still putting the python27.dll in the C:\Windows\SysWOW64
directory.

I have extracted the OmniORB zip to C:\omniORB-4.1.6,
and altered the following files:
* config\config.mk : platform = x86_win32_vs_10
* mk\platforms\x86_win32_vs_10.mk : PYTHON = /cygdrive/c/Python27/python

In the C:\omniORB-4.1.6\src, I type make export:

Microsoft (R) Manifest Tool version 5.2.3790.2076
Copyright (c) Microsoft Corporation 2005.
All rights reserved.
(dir="../../../../../bin/x86_win32"; files="omnicpp.exe"; for file in
$files; do
if [ ! -d $dir ]; then (umask 002; set -x; mkdir -p $dir); fi; dirs='.
.'; case
"$file" in /*) fullfile="$file";; *) fullfile=""; for _dir in $dirs;
do if [ -f
$_dir/$file ]; then if [ "$_dir" = "." ]; then fullfile="$file"; else
fullfile=
"$_dir/$file"; fi; break; fi; done; if [ ! "$fullfile" ]; then echo
"ERROR: Cann
ot find $file in $dirs"; exit 1; fi;; esac; base=`basename $file`; if [
-f $dir/
$base ] && cmp $fullfile $dir/$base >/dev/null; then echo "File $base
hasn't cha
nged."; else (set -x; install -c $fullfile $dir); fi; done; )
+ install -c omnicpp.exe ../../../../../bin/x86_win32
install: permission denied
make[4]: *** [export] Error 126
make[4]: Leaving directory
`/cygdrive/c/omniORB-4.1.6/src/tool/omniidl/cxx/cccp'

make[3]: *** [export] Error 2
make[3]: Leaving directory `/cygdrive/c/omniORB-4.1.6/src/tool/omniidl/cxx'
make[2]: *** [export] Error 2
make[2]: Leaving directory `/cygdrive/c/omniORB-4.1.6/src/tool/omniidl'
make[1]: *** [export] Error 2
make[1]: Leaving directory `/cygdrive/c/omniORB-4.1.6/src/tool'
make: *** [export] Error 2

C:\>chmod -R +w omniORB-4.1.6

C:\>cd omniORB-4.1.6\src

Then run make export again:

C:\omniORB-4.1.6\src>make export
making export in src/tool...
make[1]: Entering directory `/cygdrive/c/omniORB-4.1.6/src/tool'
making export in src/tool/omniidl...
make[2]: Entering directory `/cygdrive/c/omniORB-4.1.6/src/tool/omniidl'
making export in src/tool/omniidl/cxx...
make[3]: Entering directory
`/cygdrive/c/omniORB-4.1.6/src/tool/omniidl/cxx'
make[3]: *** No rule to make target `/c/python27/include/Python.h',
needed by `i
dlpython.d'. Stop.
make[3]: Leaving directory `/cygdrive/c/omniORB-4.1.6/src/tool/omniidl/cxx'
make[2]: *** [export] Error 2
make[2]: Leaving directory `/cygdrive/c/omniORB-4.1.6/src/tool/omniidl'
make[1]: *** [export] Error 2
make[1]: Leaving directory `/cygdrive/c/omniORB-4.1.6/src/tool'
make: *** [export] Error 2

It looks like an error in a makefile somewhere as
`/c/python27/include/Python.h'
should be `/cygdrive/c/python27/include/Python.h'

Cheers,

Marcus A.T MacWilliam, Senior Software Engineer. 1Spatial Ltd.
Tel: +44 (0)1223 420414, ext 2289, Mob: +44 (0)7803 706597.
E-Mail: marcus.macwilliam at 1spatial.com Skype:marcus.macwilliam

Tennyson House, 7 Cambridge Business Park, Cambridge, CB4 0WZ.
Registered in England No. 4785688, VAT Reg. No. 135539408.
Website: http://www.1spatial.com/ E-mail: info at 1spatial.com
Post by Duncan Grisby
I have downloaded OmniORB 4.1.6 from here.
The link you give is for a 64 bit build of omniORB. There isn't a 32 bit
build available so you have to get the source and compile it.
I have downloaded Python 2.7.3 from here.
I think that's the 32 bit Python installer.
http://sourceforge.net/projects/omniorb/files/omniORB/omniORB-4.1.6/omniORB-4.1.6.tar.bz2/download
http://www.python.org/ftp/python/2.7.3/python-2.7.3.msi
Install a recent cygwin, then build according to the instructions in
README.win32.txt. Make sure your path is set up right for the 32 bit
compiler. The easiest way to do that is to use Start -> All Programs ->
Microsoft Visual Studio -> Visual Studio Tools -> Visual Studio Command
Prompt. That makes sure your environment is set for the right tools.
Duncan.
[http://www.1spatial.com/signatures/1SpatialLogo_Small.jpg] <http://www.1spatial.com>





[http://www.1spatial.com/wp-content/themes/1spatial/images/youtube.png]<http://www.youtube.com/user/1SpatialGroup> [http://www.1spatial.com/wp-content/themes/1spatial/images/facebook.png] <https://www.facebook.com/1Spatial> [http://www.1spatial.com/wp-content/themes/1spatial/images/linkedIn.png] <http://www.linkedin.com/company/1spatial> [http://www.1spatial.com/wp-content/themes/1spatial/images/twitter.png] <http://www.twitter.com/1spatial>

________________________________

The information in this e-mail is confidential and may be legally privileged. It is intended solely for the addressee. Access to this email by anyone else is unauthorised. Any views or opinions expressed in this e-mail may be solely those of the author and are not necessarily those of 1Spatial Plc. This email has been scanned for viruses and message content. 1Spatial Group Limited is a company registered in England and Wales No.4785688. Registered Office: Tennyson House, Cambridge Business Park, Cambridge CB4 0WZ
Marcus MacWilliam
2013-01-25 14:13:03 UTC
Permalink
Duncan,

Thanks for the help, I have successfully built omniORB 4.1.6
on a Windows 7 machine, in 32-bit using Visual Studio 2010.

I have a couple of Notes, that it may be worth adding to the
README.win32.txt file, for building on Windows 7.

I effectively could not solve the problem of the build failure,
see my other post in reply to your e-mail. I spent a lot of time
trying to edit dir.mk files in an attempt to get the project to
successfully build.

So I deleted my attempt, re-extracted the omniORB-4.16
directory from the zip, and started again.

This time however I did 2 things differently:

1. I previously edited the config.mk and the x86_win32_vs_10.mk
using WordPad, as NotePad treated the entire file as a single line.
So I installed xemacs through Cygwin, and edited the files with
this instead.

I do not know if this made any difference to how the makefiles
were saved, whether or not WordPad added windows style EOL
characters which affected the make system?

2. I used the Security tab on Properties..., for the extracted
omniORB-4.1.6 directory to give myself 'Full Control' of the
directory and all it's sub-files and folders. I also made sure the
'Write' property was also set.

Running the 'make export' then successfully built the entire
structure correctly.

Thanks again,

Marcus A.T MacWilliam, Senior Software Engineer. 1Spatial Ltd.
Tel: +44 (0)1223 420414, ext 2289, Mob: +44 (0)7803 706597.
E-Mail: marcus.macwilliam at 1spatial.com Skype:marcus.macwilliam

Tennyson House, 7 Cambridge Business Park, Cambridge, CB4 0WZ.
Registered in England No. 4785688, VAT Reg. No. 135539408.
Website: http://www.1spatial.com/ E-mail: info at 1spatial.com
Post by Duncan Grisby
I have downloaded OmniORB 4.1.6 from here.
The link you give is for a 64 bit build of omniORB. There isn't a 32 bit
build available so you have to get the source and compile it.
I have downloaded Python 2.7.3 from here.
I think that's the 32 bit Python installer.
http://sourceforge.net/projects/omniorb/files/omniORB/omniORB-4.1.6/omniORB-4.1.6.tar.bz2/download
http://www.python.org/ftp/python/2.7.3/python-2.7.3.msi
Install a recent cygwin, then build according to the instructions in
README.win32.txt. Make sure your path is set up right for the 32 bit
compiler. The easiest way to do that is to use Start -> All Programs ->
Microsoft Visual Studio -> Visual Studio Tools -> Visual Studio Command
Prompt. That makes sure your environment is set for the right tools.
Duncan.
[http://www.1spatial.com/signatures/1SpatialLogo_Small.jpg] <http://www.1spatial.com>





[http://www.1spatial.com/wp-content/themes/1spatial/images/youtube.png]<http://www.youtube.com/user/1SpatialGroup> [http://www.1spatial.com/wp-content/themes/1spatial/images/facebook.png] <https://www.facebook.com/1Spatial> [http://www.1spatial.com/wp-content/themes/1spatial/images/linkedIn.png] <http://www.linkedin.com/company/1spatial> [http://www.1spatial.com/wp-content/themes/1spatial/images/twitter.png] <http://www.twitter.com/1spatial>

________________________________

The information in this e-mail is confidential and may be legally privileged. It is intended solely for the addressee. Access to this email by anyone else is unauthorised. Any views or opinions expressed in this e-mail may be solely those of the author and are not necessarily those of 1Spatial Plc. This email has been scanned for viruses and message content. 1Spatial Group Limited is a company registered in England and Wales No.4785688. Registered Office: Tennyson House, Cambridge Business Park, Cambridge CB4 0WZ
Loading...