www.delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/1997/01/15/14:55:31

From: loki AT maison-otaku DOT net (Jeremy Blackman)
Subject: Re: Why is cygwin.dll?
15 Jan 1997 14:55:31 -0800 :
Approved: cygnus DOT gnu-win32 AT cygnus DOT com
Distribution: cygnus
Message-ID: <Pine.LNX.3.91.970115140648.17730B-100000.cygnus.gnu-win32@herne.dragoncat.net>
Mime-Version: 1.0
X-Sender: loki AT herne DOT dragoncat DOT net
Original-To: "M.Carter" <M DOT Carter AT gcal DOT ac DOT uk>
Original-cc: gnu-win32 AT cygnus DOT com
In-Reply-To: <1.5.4.16.19970115122623.18afdcfe@scooter.gcal.ac.uk>
Original-Sender: owner-gnu-win32 AT cygnus DOT com

On Wed, 15 Jan 1997, M.Carter wrote:

> Can anyone explain the general purpose of cygwin.dll? Surely it would be
> better to incorporate any of the facilities it provides in with the executable.
> This would lead to a much simpler system. Installation and execution of binaries
> would be easier. 
> 
> Or is it not that simple? I know, for instance, that DJGPP requires a
> DPMI. On the other hand, there are many executables that you can get over
> the Internet which install directly, and work straight away.
> 

This is my assumption, do some simple math:

CYGWIN.DLL = 3,046,367 bytes (3 megs, roughly)

Sure, you could basically put that into any given .EXE

Now, figure on programs like grep.exe (91,648 bytes) having to include 
that library in their .EXE...grep is now 3 megs, instead of 91k.

Figure on that size increase for every program compiled by the gnu-win32 
kit...INCLUDING THE KIT ITSELF (e.g. everything in the binary 
directory).  Do the math (120+ files in the binary directory * 3 megs = 360+ 
additional megs)... and you'll see that a substantial chunk of your hard 
drive has just disappeared.  On top of that, add an additional 3 megs to 
each executable YOU, as a user, compile with the gnu-win32 kit...

I know MY hard drive can't handle that.  Besides, 1 meg is hefty enough 
for an executable for one program I wrote...4 would be pushing the limits 
of sanity, distribution-wise.

Isn't it just much nicer to have one .DLL instead of statically linking 
the entire cygwin library in? :)  It's easy enough to write an Installer 
for Win95 or NT which installs cygwin.dll as a shared file (which is what 
I did for my program)... one copy of the file for everything that needs 
it is much cleaner. ;)

--Jeremy
-
For help on using this list, 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