Cygwin setup crashes

Manu manubee@wanadoo.fr
Tue Mar 4 21:27:00 GMT 2003


Max Bowsher wrote:

> Manu wrote:
> > Anyway, I tried to build the CVS sources, but "setup" doesn't link:
[...]
> > I have done "./libgetopt++/bootstrap.sh", then,
> >
> > "./configure -C --enable-dependencies --disable-shared \
> > --build=i386-pc-mingw32 'CC=gcc -g' 'CXX=g++ -g' \
> > --enable-maintainer-mode && make"
> >
> > libgetopt++/src/getopt.c is not compiled, my "MinGW/lib/getopt.a"
> > is not linked with libgetopt++.
> 
> You are confused with your configure line. Your --build flag is very
> incorrect.
> 
> Either: Drop the --build flag, use the rest as-is to build a cygwin1.dll
> dependent version of setup.

Ok, I'll try again. Though, note that I built the sources with MinGW and
its build environment, not with Cygwin.
(My old Cygwin install is out of date :)
 
> Or: Use the configure line as-is from
> http://sources.redhat.com/cygwin-apps/setup.html.

> Manu wrote:
[...]
> > Call stack:
> > 00406816  SETUP.EXE:00406816  compress_gz::destroy()
> >  compress_gz.cc:472 ...
> >      free (outbuf);
> >    if (original)
> >>     delete original;
> >  }
> 
> Interesting indeed. Something very weird is happening, if a non-null pointer
> if causing a segfault on being deleted. I wonder if it could be a
> double-free. I'll fiddle with this.

Yes, I also suspect a double-free. I've commented "delete original" and naturally
setup.exe worked. (I have now Cygwin installed :)

> Manu: Just to confirm, this is setup from HEAD of CVS, showing version 2.312
> on it's splash page?

Yes, I confirm.

> Also, could you send the output of 'find' run from your local package
> directory? (as an attachment)

cf find.txt. (build.sh and compress.diff are not in CVS)

[...]
> Please try this patch (against current CVS):
[...]

I've patched and rebuilt.
I have now: "Can't open (null) for reading: No such file"
This occurs in install.cc, line 173:

---
/* install one source at a given prefix. */
static int
install_one_source (packagemeta & pkgm, packagesource & source,
      String const &prefixURL, String const &prefixPath, package_type_t type)
{
  int errors = 0;
  Progress.SetText2 (source.Base ());
  if (!source.Cached () || !io_stream::exists (source.Cached ()))
    {
      note (NULL, IDS_ERR_OPEN_READ, source.Cached (), "No such file");
      return 1;
    }
---

Something strange, the original setup.exe no longer crashes, it seems that the
problem occurs when first installing Cygwin.

BTW, that registry entries are created during setup? I found
"HKEY_LOCAL_MACHINE/Software/Cygnus Solutions".
Is there other info stored in ini-files.
I need to remove all of Cygwin and install again, in order to reproduce the problem.
Uninstall packages seems to keep track of the previous installation.

Manu.

-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: find.txt
URL: <http://cygwin.com/pipermail/cygwin/attachments/20030304/2a2da349/attachment.txt>
-------------- next part --------------
--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Bug reporting:         http://cygwin.com/bugs.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/


More information about the Cygwin mailing list