delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2005/01/11/02:50:16

Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com
Message-ID: <41E38527.6020600@corpit.ru>
Date: Tue, 11 Jan 2005 10:49:59 +0300
From: egor duda <deo AT corpit DOT ru>
Reply-To: cygwin AT cygwin DOT com
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.6) Gecko/20040413 Debian/1.6-5
MIME-Version: 1.0
To: Tero Niemela <tero_niemela AT yahoo DOT com>
Cc: cygwin AT cygwin DOT com
Subject: Re: BusyBox build problem on Cygwin
References: <20050108204149 DOT 77493 DOT qmail AT web52603 DOT mail DOT yahoo DOT com>
In-Reply-To: <20050108204149.77493.qmail@web52603.mail.yahoo.com>
X-IsSubscribed: yes

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/

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019