This is the mail archive of the cygwin@sourceware.cygnus.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

No Subject



> > I, too, have been spending my weekends trying to build perl 5.004 on
> > cygwin 95.
> > 
> > > I applied the patch that Chris Faylor kindly sent me.
> > 
> > Same here.  The patch helped, but the big issue remains: DLLs do not
> > get dynaloaded.  btw, Chris Faylor used NT.  He tells me the XS
> > modules do load properly.
> > 
> 
> Could this be related to the problems reported building DLLs under
> Win95 for X11? There the win95 generated DLLs seemed to contain
> garbage characters due to a possible error in fseek, etc while
> the WinNT generated DLLs seemed to work.
> 
> 
>   Christian


I can verify this. I have seen problems building perl extension lib DLLs on
windows 95 (not NT) due to garbage characters after the base relocation section
of the dll. It seems that if the base relocation section is not terminated by
zeros, then the DLL won't load. DLLs built under windows 95 with gnuwin32
appear to have garbage characters at the end of the base relocation section.
This appears to happen somewhat randomly. Sometimes the DLL will build fine,
sometimes it won't.

I built a simple program that will test for this condition (base relocation
section not being terminated by zeros). I will attach it to this message. Just
type dllcheck <dllname> to use. It will indicate if the DLL is OK or not.

I am currently using this program for building a port of perl/tk I am working
on. On windows 95, I have a script setup to keep building a DLL until the
dllcheck program says it is OK. This sometimes takes rebuilding the DLL 3 to 4
times until it builds OK, without the garbage characters at the end of the base
relocation section.


-John
 

dllcheck.exe


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]