bug-libtool
[Top][All Lists]
Advanced

[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





reply via email to

[Prev in Thread] Current Thread [Next in Thread]