This is the mail archive of the
cygwin@cygwin.com
mailing list for the Cygwin project.
Re: Solution for Oracle 8i on Windows client errors 6 & 487 in Cygwin 1.3.3
- To: Richard Elkins <richard dot elkins at citicorp dot com>
- Subject: Re: Solution for Oracle 8i on Windows client errors 6 & 487 in Cygwin 1.3.3
- From: Charles Wilson <cwilson at ece dot gatech dot edu>
- Date: Thu, 11 Oct 2001 18:56:03 -0400
- CC: cygwin at cygwin dot com
- References: <200110112244.SAA25078@magnolia.citicorp.com>
The problem is that cygwin1.dll must not be relocated across a fork/exec
boundary (e.g. bash exec's "oracle.exe" -- in bash's memory space and in
"oracle.exe"s memory space cygwin1.dll must be located at the same
place. However, bash doesn't depend on the oracle DLL's while
"oracle.exe" does -- and those oracle DLL's conflict with cygwin1.dll.
So *something* is dynamically relocated during the exec -- bad luck that
it happens to by cgywin1.dll instead of some other oracle DLL.
By rebasing cygwin1.dll to a location that does not conflict with the
oracle DLL's, you insure that it is not relocated during THAT exec
operation (bash -> "oracle.exe") However, you now have a nonstandard
cygwin1.dll that might conflict with OTHER dlls or executables on your
system -- and we won't be able to help you with that. :-(
That's why I suggested rebasing the oracle DLL's instead.
--chuck
Richard Elkins wrote:
> This issue must have been an ImageBase conflict of some sort although I am not sure exactly why it happened (a
> rebase system call failed? something else?). There wasn't much info available. Anywasy, the tips from Ralph
> Habacker and Charles Wilson were a big help to me.
>
> There are too many Oracle DLLs to rebase all of them; I'd rather focus on one if possible. So, in a DOS-window, after
> rebooting [make sure no one is using cygwin1.dll]:
>
> cd $CYGWIN\bin
> rebase -b 0x68000000 cygwin1.dll
>
> This seems to have done the trick. Oracle actually works now. Cygwin seems stable. I shall be testing more.
>
> Perhaps the rebase operation would solve a lot of the other reported Win32 error 487 issues. Anyways, this might be a
> subject for a general-purpose tip/technote on resolving DLL-conflicts.
>
> Cheers .. Richard
>
>
> --
> Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
> Bug reporting: http://cygwin.com/bugs.html
> Documentation: http://cygwin.com/docs.html
> FAQ: http://cygwin.com/faq/
>
>
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Bug reporting: http://cygwin.com/bugs.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/