This is the mail archive of the binutils@sourceware.cygnus.com mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: [PATCH]: ld/Makefile.am


On Thu, Mar 09, 2000 at 11:58:15AM -0800, Ian Lance Taylor wrote:
>    Date: Thu, 9 Mar 2000 11:50:59 -0800
>    From: "H . J . Lu" <hjl@valinux.com>
> 
>    I know this patch doesn't look very clean. But I don't know automake
>    well enough to make it better. Here is the problem I am trying to fix.
>    I got:
> 
>    # /work/ia64/bin/cygnus/20000303/gcc/xgcc -B/usr/ia64-cygnus-linux/ia64-cygnus-linux/bin/ -B/usr/ia64-cygnus-linux/ia64-cygnus-linux/lib/ -B/work/ia64/bin/cygnus/20000303/gcc/ -g -O2 -pipe -Dno_inhibit_libc -fvtable-thunks -D_GNU_SOURCE -fno-implicit-templates -fexceptions -Wl,-soname,libstdc++-libc6.1-2.so.3 -shared -o libstdc++-3-libc6.1-2-2.10-ia64-000216.so `cat piclist` -lm
>    gcc: installation problem, cannot exec
>    `/work/ia64/bin/cygnus/20000303/gcc/collect2': Argument list too long
> 
>    What happened were
> 
>    1. I built as, ld, gcc, and libstdc++ together.
>    2. I enabled shared libbfd.
> 
>    As the result, ./ld/ld-new, which is a shell script, uses too many
>    arguments when it was executed the first time. The first time when
>    you run ./ld/ld-new, it creates .libs/lt-lt-ld-new if shared libbfd
>    is enabled. After that, everything seems ok. I am trying to add a
>    rule to ld/Makefile.am such that we will run ./ld/ld-new just once
>    after it is built. I don't care if it really works or not. The idea
>    is to create .libs/lt-lt-ld-new if necessary. However, I couldn't
>    find a clean way to do so with automake. Any suggestions?
> 
> This sounds like a libtool bug.  Why fix it in binutils or automake?
> Whatever it is ld-new does the first time it is run, why doesn't

Not everyone runs the binary built by libtool befter installing it.
Even if they do, they don't use it like gcc does to ld. The arg list
is usually not that long.

> libtool do that when it creates ld-new?
> 

I was asking the same question. However, this particular problem seems
only to affect ld and it only happens when you

1. Build ld and gcc together.
2. Enable shared bfd.

at the same time. If we change libtool, we may wind up to do it for
every binary it builds. I don't know if it is a good idea or not.

-- 
H.J. Lu (hjl@gnu.org)

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]