This is the mail archive of the 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]
Other format: [Raw text]

Re: Packaging software built with cygwin

On Tue, Feb 04, 2003 at 10:32:46PM -0500, Christopher Faylor wrote:
> On Tue, Feb 04, 2003 at 08:48:03PM -0600, Jay Maynard wrote:
> >On Tue, Feb 04, 2003 at 09:31:43PM -0500, Igor Pechtchanski wrote:
> >>Remember that linking against some version of libcygwin.a doesn't mean
> >>you have to keep to the corresponding version of cygwin1.dll.  Since
> >>it's loaded dynamically, all you need is for the functions you need to
> >>be present in the new DLL.  This is generally the case.
> >Present *and* working the same or compatibly.  Unfortunately, we've
> >found that that's not the case.
> I sincerely doubt that you've found a problem where something that was
> available in an older DLL is not available in a newer one.  The only
> case I can think of where this happened is the dropping of //a for
> /cygdrive/a.

There are numerous bug reports in the Hercules mailing list archives from
folks who have tried to run Hercules with a different version of
cygwin1.dll than the one Hercules was built against. In every case,
installing the version that Hercules was built against corrected the

It may be intended to be upward compatible, but that's not our experience.

> >There's also a bug right now that causes allocation of three times as
> >much memory as Hercules actually calls for.  (I believe that one's
> >already been reported; it really hits Hercules hard, though, as it's
> >not uncommon to have Hercules allocate 256 MB of memory for the
> >emulated system's central storage, and a 768 MB allocation will drive
> >most Windows boxes to their knees.)
> I'm not aware of any bug report along these lines.  I must have missed
> it.
> A test case would be welcome.

I've asked the Hercules developer community, several of whom are much more
familiar with development under Cygwin than I am, to generate a test case
and report the bug. I had thought it had been reported, but it apparently
has not been.

> However, just in case you need to hear it, it is true that you have to
> provide the sources for the cygwin DLL if you want to distribute it.

I have stopped distributing the Cygwin DLL entirely, since meeting this
requirement would impose larger requirements for disk space and/or time than
I can afford. (See how the GPL has improved sharing of programs! Pfaugh.) Of
the five DLLs that Hercules needs (cygwin1.dll, cygintl-2.dll,
cygiconv-2.dll, cygbz2-1.dll, and cygz.dll), only one is GPLed. This imposes
requirements on distribution of the complete package that do not apply to
the other platforms that Hercules is distributed for. This is hardly going
to make porting packages from Linux to Windows easier.

I've considered, and rejected, the idea of distributing my own setup.ini
file. The problem is that it seems to be as much of a moving target as
Cygwin itself.

I would suggest that, if it is desired to promote the development of
applications on the Cygwin platform, serious consideration be made to making
it as simple as possible to install only those portions of Cygwin that the
application requires. This means just the necessary DLLs, without all of the
interactive use baggage. Right now, that's nearly impossible.

Unsubscribe info:
Bug reporting:

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