RFC: Cygwin 64 bit?
Wed Jul 6 19:10:00 GMT 2011
On Jul 6 15:00, Earnie wrote:
> Corinna Vinschen wrote:
> > IMHO the order should be something like this:
> > Is suffix ".so"? Yes -> Does the file exist? Yes -> Done No ->
> > Replace ".so" with ".dll" #ifdef __X86_64__ Does the filename start
> > with "cyg"? Yes -> Replace "cyg" with "cyg64" Does the file exist? No
> > -> Revert back to "cyg" #endif Does the filename start with "lib"?
> > Yes -> Replace "lib" with "cyg"/"cyg64" Does the file exist? No ->
> > Revert back to "lib" Does the file exist? Yes -> Done return ENOENT
> It may be easier just to put the 64 bit dll in /lib64 and add /lib64 to
> the PATH variable before the CreateProcess occurs. Or perhaps do both.
This is *not* about fork or exec, it's about dlopen. And the reason to
do something like this is to be able to change the "cyg" prefix but
maintain some kind of backward compatibility when loading DLLs dynamically.
Also, moving 64 bit DLLs to /lib64 and add /lib64 to $PATH doesn't
really help, if the 64 bit DLLs have the same name as their 32 bit
counterparts. Either the 64 bit DLLs or the 32 bit DLLs are prior in
the Windows DLL search path. Either 32 bit applications will break, or
64 bit applications, dependent on the order.
Corinna Vinschen Please, send mails regarding Cygwin to
Cygwin Project Co-Leader cygwin AT cygwin DOT com
More information about the Cygwin-developers