Problems compiling cygwin from CVS - Undefined symbol

Nicholas Wourms nwourms@netscape.net
Tue Jan 13 22:40:00 GMT 2004


bkeener@thesoftwaresource.com wrote:

> Christopher Faylor wrote:
> 

> make[3]: Leaving directory `/usr/develop/obj/cygwin/i686-pc-cygwin/newlib'
> make[2]: Leaving directory `/usr/develop/obj/cygwin/i686-pc-cygwin/newlib'
> make[1]: Leaving directory `/usr/develop/obj/cygwin/i686-pc-cygwin/newlib'
> Configuring in i686-pc-cygwin/libiberty
> configure: error: invalid package name: target-subdir
> make: *** [configure-target-libiberty] Error 1

Looking at the ChangeLog, the gcc people recently switched libiberty's 
configure script to the new autoconf version.  So your error has nothing 
to do with you and everything to do with the newer autoconf and it's 
interaction with our version of ash.  I know this because this will not 
happen if you delete sh.exe and symlink sh.exe->bash.exe.  Anyhow, I've 
brought this up countless times in the past on the main list, but nobody 
seemed interested in helping to track it down.  At first I was only 
seeing it in WinME, but then it started acting up under Win2k.  I tried 
working on it for awhile, but didn't get very far due to the randomness 
of this condition happening and it not wanting to happen when I was 
trying to debug it.  So I got frustrated, and without a wife to 
encourage me, I gave up on trying to track it down in ash/cygwin.  The 
most I can say is that one of the sh children is racing when expr is 
called in multiple subsequent loops.  I suspect this might be due to the 
fact that ash's code may have bitrotted somewhat over the years.

Anyhow, I've got ten million other projects that I'm trying to work on 
without getting into it, but someone with some free time might consider 
trying to merge up the ash source with the current NetBSD cvs source. 
It should be fairly easy considering the RCSID is in every file.  This 
ash was modified with debian enhancements and some cygwin stuff, so keep 
that in mind when you resolve failed hunks.  Also, some consideration 
should be given to whether we actually need ash to be built completely 
stripped down (-DSMALL), since it isn't compliant with the POSIX 
standard for /bin/sh in its current form.  I doubt it will impact 
performance that much and could in fact provide better memory/process 
management facilities, etc.

Finally, I do have something you can try in the mean time.  I have 
isolated the problematic portions of the script and have in fact created 
a very kludgy patch to rid any 2.54+ script of them.  This ought to work 
on any 2.54+ configure script since the area it affects is always 
generated and always before the variable portions of an autoconf script.

Cheers,
Nicholas
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: configure.patch
URL: <http://cygwin.com/pipermail/cygwin-developers/attachments/20040113/8f1efb30/attachment.ksh>


More information about the Cygwin-developers mailing list