Solution for Oracle 8i on Windows client errors 6 & 487 in Cygwin 1.3.3

Charles Wilson cwilson@ece.gatech.edu
Thu Oct 11 15:55:00 GMT 2001


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/



More information about the Cygwin mailing list