Subject: Re: BusyBox build problem on Cygwin
From: egor duda <[email-masked]>
To: Tero Niemela <[email-masked]>
Cc: [email-masked]
Date: Tue, 11 Jan 2005 10:49:59 +0300

Tero Niemela wrote:
> Egor, hi,
> 
> I'm having a build problem of BusyBox-1.00 on Cygwin
> and I think I've tracked the origin of it being
> related to a change you've contributed to BusyBox (1).
> Specifically, when building BusyBox, its top-level
> Makefile include a huge amount of Makefile.in files
> with this line:
> 
> include $(patsubst %,%/Makefile.in, $(SRC_DIRS))

Actually, such include was present in build system before my change, so 
i doubt this line is the culprint

> Now, when I'm building BusyBox-1.00 on Cygwin in
> directory /busybox-1.00 everything goes ok. But when
> I'm using a bit longer path, like 
> 
> /tmp/a_longish_directory_name_for_testing/busybox-1.00
> 
> I got an error when doing 'make':
> 
> gcc -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer
> -o scripts/mkdep
> /tmp/a_longish_directory_name_for_testing/busybox-1.00/scripts/mkdep.c
> gcc: installation problem, cannot exec
> `/usr/lib/gcc-lib/i686-pc-cygwin/3.3.3/collect2.exe':
> Resource temporarily unavailable
> make: *** [scripts/mkdep] Error 1
> 
> When testing with path 
> 
> /tmp/a_longish_directory_name_for_test/busybox-1.00 
> 
> things work again. I presume this has something to do
> with Cygwin's exec() implementation, the build seems
> to be chiking when to length for include exceeds some
> limit.

It sounds more like memory corruption problem to me. It may be in cygwin 
itself or in cygwin's version of make. When you use longer paths, some 
static buffers or allocated memory seem to be overwritten which may 
cause such behaviour.

It would be interesting to check if simply running
gcc -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -o scripts/mkdep
/tmp/a_longish_directory_name_for_testing/busybox-1.00/scripts/mkdep.c
from command line works ok.

> I tried all sorts of tricks in Makefile to find a
> workaround but didn't succeed to produce anything
> useful. Do you have any ideas how to fix this? Is this
> more Cygwin or BusyBox problem? Currently, I can live
> with using always /busybox-1.00 for building but that
> is a bit awkward..

I suggest you to follow cygwin bug reporting guidelines from 
http://cygwin.com/problems.html, including cygcheck output to debug th

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/