delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/1997/07/08/06:54:41

From: tvoverbe AT wk DOT estec DOT esa DOT nl (Ton van Overbeek)
Subject: Re: How to build Matlab 5 MEX files with the GNU-Win32 tools
8 Jul 1997 06:54:41 -0700 :
Approved: cygnus DOT gnu-win32 AT cygnus DOT com
Distribution: cygnus
Message-ID: <33C21FBB.794BDF32.cygnus.gnu-win32@wk.estec.esa.nl>
References: <33C2172E DOT 41C67EA6 AT wk DOT estec DOT esa DOT nl>
Mime-Version: 1.0
X-Mailer: Mozilla 3.01 (X11; I; SunOS 4.1.3_U1 sun4m)
Original-Cc: gnu-win32 AT cygnus DOT com, chj AT lin DOT foa DOT se, wgreathouse AT smva DOT com
Original-Sender: owner-gnu-win32 AT cygnus DOT com

OOPS,

I made an error in the build.sh script in my previous posting.
The error is in the part:

> # Create fixup.o which is needed to terminate the
> # import list and the relocation section in the dll.
> cat > fixup.c << EOF
> /* Copied from winsup/dcrt0.cc in the cygwin32 source distribution. */
>         asm(".section .idata\$3\n" ".long 0,0,0,0, 0,0,0,0");
> /* Next one is needed to properly terminate the .reloc section in the dll */
>         asm(".section .reloc\n" ".long 0,8");
> EOF
 
The addition to the .reloc section does not belong there any more.
If you include this, peclean will most probably crash under Win95.
So the correct form is:
> # Create fixup.o which is needed to terminate the import list.
> cat > fixup.c << EOF
> /* Copied from winsup/dcrt0.cc in the cygwin32 source distribution. */
>         asm(".section .idata\$3\n" ".long 0,0,0,0, 0,0,0,0");
> EOF

Note for Mr. Greathouse and other DLL/PE format experts: With the extra
relocation chunk with 0 fixups the DLL loads properly under Win95, even
with cruft at the end of the .reloc section, but peclean crashes (access
violation in the c runtime dll). 

Ton van Overbeek, tvoverbe AT wk DOT estec DOT esa DOT nl
-
For help on using this list (especially unsubscribing), send a message to
"gnu-win32-request AT cygnus DOT com" with one line of text: "help".

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019