This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
Re: gnu-ld: looping in map_segments
- From: John Breitenbach <breiten at lexmark dot com>
- Cc: binutils at sourceware dot org
- Date: Tue, 26 Feb 2008 13:11:39 -0500
- Subject: Re: gnu-ld: looping in map_segments
- References: <47C41E5D.3060908@lpdev.prtdev.lexmark.com>
I guess I answered my own question. Adding -lgcc_s to the linker's
command line solves the problem. I tried building with both
binutils-2.18 and last week's snapshot. Both complained about not being
able to find libstdc++. When I located this library in the compiler's
path and added that directory to the linker's command line, I got errors
regarding Unwind stuff. Adding -lgcc_s solved that. Both of the newer
linker worked with these changes. And when I went back to the linker I
had been using, it works now, too.
This problem comes and goes with a trivial code change to one of my C
modules - so I'm guessing its due to actual code size. I add or remove
one extra call to a function (4 instructions) which is already called
many times, to see this problem come and go.
John Breitenbach wrote:
Hi,
We began getting this message after a few supposedly benign changes
to our big app (800+- modules + libraries) the other day. This is
using GNU ld version 2.17 20061206 build for ppc-linux-elf hostest on
x86 Linux (RHEL4)
I'll try to get the latest and greatest version this evening to see if
the problem goes away. I'll also work on reverting changes to a few C
files to see what caused the error message to begin showing up.
But even if the latest version works, upgrading is painful, and I'd
like to know what the problem is in hopes that a linker script change
could avoid this problem.
Thanks,
John Breitenbach