This is the mail archive of the
cygwin-developers@cygwin.com
mailing list for the Cygwin project.
Re: process-startup headache.
- To: "Ralf Habacker" <Ralf dot Habacker at saght dot tessag dot com>
- Subject: Re: process-startup headache.
- From: "Robert Collins" <robert dot collins at itdomain dot com dot au>
- Date: Sat, 9 Jun 2001 23:35:20 +1000
- Cc: <cygwin-developers at sourceware dot cygnus dot com>
- References: <000901c0ef4e$904cbe50$6e032bb7@BRAMSCHE> <018e01c0ef53$02e833f0$0200a8c0@lifelesswks>
----- Original Message -----
From: "Robert Collins" <robert.collins@itdomain.com.au>
> Hi folk,
>
> A similar-in-appearance problem is occuring with binaries linked by a
> patched ld.exe, (which I just installed tonight, so the first thing is
> not an artifact of that). I'm trying out Paul Solovosky{I hope thats
> right}'s ld-that-auto-imports.
>
This problem is not related to the slow startup problem. The problem is
that the .dll's generated by Paul's ld, have a default base address of
0x610c0000 which collides with cygwin's base addres of 0x61000000.
Cygwin doesn't seem to be relocatable in practice, even though the .dll
is marked as relocatable.
Workaround: To build .dll's with the patched ld that work with cygwin
1.3.2 use -Wl,--image-base=0x10000000 on the gcc commandle line.
(0x10000000 is the default .dll address according to MSDN. [don't
use --dll - --dll creates the 0x610c0000 address that doesn't work).
Long term solution:I think cygwin1.dll should be marked non-relocatable
to prevent .dll's that collide with the cygwin1.dll causing crashes and
unexplained behaviour.
Rob