[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Cygwin failure with large number of sources
From: |
Christopher Hulbert |
Subject: |
Re: Cygwin failure with large number of sources |
Date: |
Wed, 14 Jun 2006 10:37:50 -0400 |
On 6/14/06, Ralf Wildenhues <address@hidden> wrote:
Hello Christopher,
Thanks for the bug report.
* Christopher Hulbert wrote on Wed, Jun 14, 2006 at 03:49:06PM CEST:
> I don't think this is a libtool bug, but I thought I would not this.
We have planned to use response files on w32 at one point, FWIW.
> I was compiling a library with 1635 object files into a static
> archive. The cygwin command shell fails with:
What's the command? `ar cru ...'?
How long exactly is the command line, and why did the
command line length limit
max_cmd_len=8192
/bin/sh ../libtool --tag=CC --mode=link pgcc -I../../../src/vsipl/include -
./../src/vsipl/include/privateC -O0 -Wall -g --exceptions -m32 -Minfor
orm -Minfo=all -c9x -D__STDC_VERSION__=199901L -o libvsip.la -rpath C:/cy
home/chulbert/ISLtools_v1.2/i686-pc-cygwin-gnu/lib vsip_arg_d.lo
[1630+ more .lo files] -lm -lmingwex
5 [main] sh 1644 C:\cygwin\bin\sh.exe: *** fatal error - fork: can't
ve memory for stack 0x23E660 - 0x240000, Win32 error 487
7 [main] sh 3092 child_copy: stack write copy failed, 0x23E660..0x240
done 0, windows pid 2352532, Win32 error 5
../libtool: fork: No error
make[1]: *** [libvsip.la] Error 129
make[1]: Leaving directory `/cygdrive/c/cygwin/home/chulbert/ISLdevel/build
in/vsipl/src'
make: *** [all-recursive] Error 1
setting not trigger a multiple archiver invocation?
All these questions may be answered by the output of
./libtool --debug [rest of command line] >log 2>&1
That won't work. It's crashing I guess trying to call libtool with
all those arguments.
and sending the log file (please bzip2 or gzip).
Erm, please also tell us the size of your environment
(`env | wc'); I don't remember off-hand whether that
was part of the limit on Cygwin.
bash-3.1$ env | wc
66 120 4382
> 5 [main] sh 3668 C:\cygwin\bin\sh.exe: *** fatal error - fork:
> can't reserve memory for stack 0x23E660 - 0x240000, Win32 error 487
> 6 [main] sh 2896 child_copy: stack write copy failed,
> 0x23E660..0x240000, done 0, windows pid 2352532, Win32 error 5
> ../libtool: fork: No error
> make: *** [libvsip.la] Error 129
Hmm. Is that a typical command line limitation error even?
Maybe your system just ran out of virtual memory? (I don't
know Cygwin that well off-hand.)
It's possible. I've searched through the cygwin archives, but nothing
that really works. I've seen this error a few places in the archive.
This likely belongs as a bug report against cygwin, I just haven't
made it there yet. The gmane news seems to be down.
> This seems to be correlated with so many object files. I remember
> seeing libtool at one point somewhere else trying to do partial
> linking. Would there be a way to do something similar when there are
> so many object files?
Yes, and all that machinery should be in place.
Yeah, I don't know that libtool can avoid this without again keeping
all those in a file and avoiding the command line
> Currently After it fails I just manually go
> into the directory and run ar cru .libs/libvsip.a *.o and it seems to
> work fine.
This is really weird. Is this a recent Cygwin? Which w32 system on?
Somewhat recent. I try not to do too many updgrades. The origin of
this was actually on my home PC with a fresh (i.e. recent) cygwin
install, but I though it may be due to an old Athlon XP 3000+ with
1.5Gb of RAM. So I deceided to wait and try the work PC Pentium 4
3.2Ghz but only 1 Gb of ram.
Cheers,
Ralf