Subject: Re: cygwin.dll
From: [email-masked] ("M.Carter")

16 Jan 1997 10:31:28 -0800
Approved: [email-masked]
Distribution: cygnus
Message-ID: <[email-masked]>
Mime-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
X-Sender: [email-masked]
X-Mailer: Windows Eudora Light Version 1.5.4 (16)
Original-To: [email-masked]
Original-Sender: [email-masked]

I was about to write something along the lines of 

"A cygwin.dll ought not to be 3Mb big, because I looked at the DJGPP
executables, and nothing approaching 3Mb is required. The smallest
executable is 2k (djtart.exe), the largest is 230k (ld.exe), but 
most executables are more modest. gcc.exe is only 99k, for instance.
Okay, there is also the DPMI to consider - but that weighs in at
a miniscule 26k. So, all in all, the executables have quite a small size."

but then Jim Balter writes

> The point is that cygwin provides *unix semantics*.  While grep
> may not need much of that beyond filenames, something like bash
> certainly does.  There is a lot of code in cygwin.dll.

which seems a fair point.

On the other hand, if I want to distribute a binary which stands alone
from the cygnus project, then I'd have to include the whopping 3Mb
dll in the distribution - which is a bit off-putting for a
 potential downloader. Then,
if he transfers stuff with floppies (which I do, because I'm using
a Win 3.11 486 to connect to the Internet, but I have a Pentium 
Win 95 at home, where I do most of my programming), he's then got the
hassle of splitting files up, and recombining them, etc. etc..

Fair enough - maybe  cygnus has quite ambitious goals which extend
beyond what I am looking for. My own desire is to have UNIX shell
functionality, and all the binaries that go with it, inside a Win 95
environment. I don't really want to oust Win 95 - because otherwise
I could just install GNU/Linux. Win 95 does have it's nice applications -
eg. Word - and so can't really be written off. When I create an distribution,
I would like the end user to be able to use it as simply as possible.
Which means he doesn't spend time fiddling about with the installation.

Now, don't get me wrong. I'm not saying that you CAN'T have dll's,
or that install programs are difficult to write. If I'm writing a
fairly nifty visual application, then I'd expect to have some kind of install
utility to set everything up for the user, including any fancy dlls that are
required.
But on the other hand, if I'm writing a shell utility, I'd like the binary
to be complete in itself.

> Any university offers courses that will cover the tradeoffs between
> dynamic and static libraries; it seems some readers of this group
> could benefit from such an education.  

Oops - I'm duly chastened. But I'd like to point out that commercial
software for Win95 runs fairly smoothly, whereas stuff I get off the
Internet usually requires the Devil's own cunning to get working.

Martin Oldfield <[email-masked]> writes

> What happens if we change the name of cygwin.dll to include a (major)
> version number ? Then people can keep cygwin1.dll, cygwin2.dll, &c on
> their machine and run both old and new executables without any
> problems.

This suggestion has the advantage that we could use our old system
to bootstrap the new system, and default to the old one when things get
tricky. The problem I had in the past was that my beta 17 started to
'act up'. I started to make an installation of 17.1, but things
got mixed up along the line, and I couldn't sort out the mess. I
ended up deleting beta17. I am now in the position of installing 17.1 
from scratch. I doubt I'm the only one that has had these problems.
One of my floppies contains a read error, currently preventing this.
But that's another story.

-
For help on using this list, send a message to
"[email-masked]" with one line of text: "help".