[omniORB] omniORB with VC7

Kevin Wooten kwooten@itracs.com
Tue, 26 Mar 2002 18:43:46 -0700


I have tracked down the source of the omniidl crash.

Microsoft has changed the C runtime library DLL in version 7. The new =
DLL is named MSVCR70.DLL, as opposed to MSVCRT.DLL in 6. Python comes =
compiled with VC6 and thus links with MSVCRT.DLL. When running omniidl, =
the idl source file is opened by Python code and this makes the FILE =
pointer Python passes back to omniidl invalid, as it was allocated in =
MSVCRT.DLL, and omniidl attempts to use it with MSVCR70.DLL. The fix for =
this problem remains to compile omniidl in VC6, or compile Python in =
VC7. Although, I have not tried compiling Python in VC7 so I cannot =
attest to its validity.

Kevin

>> -----Original Message-----
>> From: Kevin Wooten=20
>> Sent: Tuesday, March 26, 2002 11:29 AM
>> To: Sandro Tolaini; omniorb-list@uk.research.att.com
>> Subject: RE: [omniORB] omniORB with VC7
>>=20
>>=20
>> Compiling ( and using ) omniORB 4, with VC7 appears to work=20
>> fine. I have been using it for about a month. You just have=20
>> to compile omniidl with VC6. Here was my process.
>>=20
>> 1. Open VS.NET command prompt
>> 2. Switch to (OMNI_ROOT)/src
>> 3. Do 'make export'=20
>> 4. Open VS6 command prompt
>> 5. Switch to (OMNI_ROOT)/src/tool/omniidl
>> 6. Do 'make clean'
>> 7. Do 'make export'
>>=20
>> That should work. I have not bothered to find the problem, I=20
>> am going to look into it, probably soon. There was one other=20
>> problem with tcpTransportImpl.cc using an undefined=20
>> structure, which was the result of a VS6 to VS.NET header=20
>> file change. I sent a the fix to this mailing list, but do=20
>> not know if it got put into the source.
>>=20
>> Kevin
>>=20
>>=20
>>=20
>> >> -----Original Message-----
>> >> From: Sandro Tolaini [mailto:tolaini@libero.it]
>> >> Sent: Monday, March 25, 2002 10:10 AM
>> >> To: omniorb-list@uk.research.att.com
>> >> Subject: [omniORB] omniORB with VC7
>> >>=20
>> >>=20
>> >> Did someone managed to compile omniORB with VC7 (AKA .NET)?=20
>> >> I'm getting
>> >> an invalid memory access (write at address 0x10) in omniidl.exe.
>> >>=20
>> >> Cheers,
>> >>   Sandro Tolaini.
>> >>=20
>> >>=20
>> >>=20
>> >>=20
>>=20
>>=20