bug-gnu-utils
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

ld bug.


From: Virgil Palanciuc
Subject: ld bug.
Date: Fri, 24 Oct 2003 18:09:39 +0200

   Hello everyone,

  I ran into problems using gcc. 
  The short story - ld crashes with this error:
Linking c:/TMP/elli/bin/elli.exe
/usr/lib/gcc-lib/i686-pc-cygwin/3.2/../../../../i686-pc-cygwin/bin/ld: BFD 
internal error, aborting
at /cygnus/netrel/src/binutils-20011002-1/bfd/coffcode.h line 818 in 
handle_COMDAT

/usr/lib/gcc-lib/i686-pc-cygwin/3.2/../../../../i686-pc-cygwin/bin/ld: Please 
report this bug.

collect2: ld returned 1 exit status
make[1]: *** [c:/TMP/elli/bin/elli.exe] Error 1
make: *** [all] Error 2

   I suspect that it crashes because it has to link a very large object file:
5248 -rw-rw-rw-    1 batwings None      5373267 Oct 24 18:17 
obj/polaris_instructions.o

  And now here is the longer story about this file:
On my project, I have this file which is very large (actually not so large - 
but it becomes large after preprocessing - approx 85.000 lines of code, 
excluding the standard headers). In this file there was a function (lets call 
it "foo") which made a lot (thousands) of calls to other (small) functions. 
When compiling this file (even on -O0) gcc crashed (because foo actually 
contained more than 65535 temporary symbols, so I suspect it simply hit some 
internal GCC limitation). To overcome this, I split the function 'foo' into 
approx 40 functions - foo1..foo40. Now all foo does is to call these 40 
functions. This works fine as far as compilation is concerned - but now I have 
this linker problem. I have no idea how to overcome it. Any suggestions?
   I would gladly help you isolate the bug if I can - but I am not allowed to 
send you the entire project so that you may attempt to link it yourself.

   Thanks,
     Virgil.

P.S. My gcc version is:
/c/TMP/elli$ gcc --verbose -v
Reading specs from /usr/lib/gcc-lib/i686-pc-cygwin/3.2/specs
Configured with: /netrel/src/gcc-3.2-2/configure 
--enable-languages=c,c++,f77,java --enable-libgcj -
-enable-threads=posix --with-system-zlib --enable-nls 
--without-included-gettext --enable-interprete
r --disable-sjlj-exceptions --disable-version-specific-runtime-libs 
--enable-shared --build=i686-pc-
linux --host=i686-pc-cygwin --target=i686-pc-cygwin --enable-haifa 
--prefix=/usr --exec-prefix=/usr
--sysconfdir=/etc --libdir=/usr/lib --includedir=/nonexistent/include 
--libexecdir=/usr/sbin
Thread model: posix
gcc version 3.2 20020927 (prerelease)



Need a new email address that people can remember
Check out the new EudoraMail at
http://www.eudoramail.com



reply via email to

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