This is the mail archive of the binutils@sources.redhat.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]
Other format: [Raw text]

problem with bfd update from 2001/12/17


Hi Alan,

I have seen, that you have written many things for bfd/ld.
I like to submit some patches needed for the kde-cygwin port
http://kde-cygwin.sf.net (some optimations for auto-import stuff and later a
patch for performance benefits through ordinal linking).
I have tried to update binutils to the newest cvs release, but this fails.
Danny Smith has announced this bug in
http://www.cygwin.com/ml/binutils/2002-01/msg00477.html and additional there are
some current messages on the binutils list.
http://www.cygwin.com/ml/binutils/2002-04/msg00398.html

I have analysed this bug a little and found, that the import libraries differ.
The single object files are the same, but in the header there are symbols
missing (as I can recognize), so that the exported functions (and auto-imported
data) could not be linked (undefined reference error). (The relating dxxx.o
objectfiles in the library are ignored).

Because this bug was introduced by a major change of the bfd section handling, I
assume, that the bug is located in the bfd code.

Additional I have encountered an assert in bfd_map_over_sections(), while
importing auto-import data.
  if (i != abfd->section_count)	/* Debugging */
    abort ();

My question to this is: Do you have an idea or can give me a direction, how to
fix this bug ? Currently the ld development hangs about 4 month because of this
bug, so this is very important for me/us.

If you can't answer this question or have no time for this, do you know someone
who can give an answer ??

Thanks for any help.

libdll.a
  Addr     0 1  2 3  4 5  6 7  8 9  A B  C D  E F 0 2 4 6 8 A C E
--------  ---- ---- ---- ---- ---- ---- ---- ---- ----------------
00000000  213c 6172 6368 3e0a 2f20 2020 2020 2020 !<arch>./
00000010  2020 2020 2020 2020 3130 3139 3737 3037         10197707
00000020  3039 2020 3020 2020 2020 3020 2020 2020 09  0     0
00000030  3020 2020 2020 2020 3434 3220 2020 2020 0       442
00000040  2020 600a 0000 0012 0000 01fe 0000 0332   `........~...2
00000050  0000 04b0 0000 04b0 0000 06be 0000 06be ...0...0...>...>
00000060  0000 08da 0000 08da 0000 0af4 0000 0af4 ...Z...Z...t...t
00000070  0000 0d06 0000 0d06 0000 0f2e 0000 0f2e ................
00000080  0000 1162 0000 1162 0000 139e 0000 139e ...b...b........

symbols

00000090  5f64 6c6c 5f64 6c6c 5f69 6e61 6d65 005f _dll_dll_iname._
000000a0  5f68 6561 645f 646c 6c5f 646c 6c00 5f5f _head_dll_dll.__
000000b0  696d 705f 5f76 6172 3030 3030 005f 5f6e imp__var0000.__n
000000c0  6d5f 5f76 6172 3030 3030 005f 5f69 6d70 m__var0000.__imp
000000d0  5f5f 5f6e 6d5f 5f72 6561 6c6c 6f63 005f ___nm__realloc._
000000e0  5f6e 6d5f 5f5f 6e6d 5f5f 7265 616c 6c6f _nm___nm__reallo
000000f0  6300 5f5f 696d 705f 5f5f 6e6d 5f5f 6d61 c.__imp___nm__ma

  Addr     0 1  2 3  4 5  6 7  8 9  A B  C D  E F 0 2 4 6 8 A C E
--------  ---- ---- ---- ---- ---- ---- ---- ---- ----------------
00000100  6c6c 6f63 005f 5f6e 6d5f 5f5f 6e6d 5f5f lloc.__nm___nm__
00000110  6d61 6c6c 6f63 005f 5f69 6d70 5f5f 5f6e malloc.__imp___n
00000120  6d5f 5f66 7265 6500 5f5f 6e6d 5f5f 5f6e m__free.__nm___n
00000130  6d5f 5f66 7265 6500 5f5f 696d 705f 5f5f m__free.__imp___
00000140  6e6d 5f5f 646c 6c5f 646c 6c63 7274 3000 nm__dll_dllcrt0.
00000150  5f5f 6e6d 5f5f 5f6e 6d5f 5f64 6c6c 5f64 __nm___nm__dll_d
00000160  6c6c 6372 7430 005f 5f69 6d70 5f5f 5f6e llcrt0.__imp___n
00000170  6d5f 5f63 7967 7769 6e5f 696e 7465 726e m__cygwin_intern
00000180  616c 005f 5f6e 6d5f 5f5f 6e6d 5f5f 6379 al.__nm___nm__cy
00000190  6777 696e 5f69 6e74 6572 6e61 6c00 5f5f gwin_internal.__
000001a0  696d 705f 5f5f 6e6d 5f5f 6379 6777 696e imp___nm__cygwin
000001b0  5f64 6574 6163 685f 646c 6c00 5f5f 6e6d _detach_dll.__nm
000001c0  5f5f 5f6e 6d5f 5f63 7967 7769 6e5f 6465 ___nm__cygwin_de
000001d0  7461 6368 5f64 6c6c 005f 5f69 6d70 5f5f tach_dll.__imp__
000001e0  5f6e 6d5f 5f63 616c 6c6f 6300 5f5f 6e6d _nm__calloc.__nm
000001f0  5f5f 5f6e 6d5f 5f63 616c 6c6f 6300 6430 ___nm__calloc.d0
           here start first d*.o object file                    ^^^^^^

  Addr     0 1  2 3  4 5  6 7  8 9  A B  C D  E F 0 2 4 6 8 A C E
--------  ---- ---- ---- ---- ---- ---- ---- ---- ----------------
00000200  3030 3030 392e 6f2f 2020 2020 2020 3130 00009.o/      10
00000210  3139 3737 3037 3039 2020 3531 3320 2020 19770709  513
00000220  3531 3320 2020 3634 3420 2020 2020 3234 513   644     24
00000230  3720 2020 2020 2020 600a 4c01 0300 0000 7       `.L.....
00000240  0000 9c00 0000 0400 0000 0000 0500 2e69 ...............i
00000250  6461 7461 2434 0000 0000 0000 0000 0400 data$4..........
00000260  0000 8c00 0000 0000 0000 0000 0000 0000 ................

libdll.a_doesntwork

  Addr     0 1  2 3  4 5  6 7  8 9  A B  C D  E F 0 2 4 6 8 A C E
--------  ---- ---- ---- ---- ---- ---- ---- ---- ----------------
00000000  213c 6172 6368 3e0a 2f20 2020 2020 2020 !<arch>./
00000010  2020 2020 2020 2020 3130 3139 3738 3032         10197802
00000020  3632 2020 3020 2020 2020 3020 2020 2020 62  0     0
00000030  3020 2020 2020 2020 3420 2020 2020 2020 0       4

!!!!!!!!!!!!!!!!!!!!!! no symbols !!!!!!!!!!!!!!!!!!

00000040  2020 600a 0000 0000 6430 3030 3030 392e   `.....d000009.
           here start first d*.o object file               ^^^^^^

00000050  6f2f 2020 2020 2020 3130 3139 3738 3032 o/      10197802
00000060  3632 2020 3531 3320 2020 3531 3320 2020 62  513   513
00000070  3634 3420 2020 2020 3234 3720 2020 2020 644     247
00000080  2020 600a 4c01 0300 0000 0000 9c00 0000   `.L...........
00000090  0400 0000 0000 0500 2e69 6461 7461 2434 .........idata$4
000000a0  0000 0000 0000 0000 0400 0000 8c00 0000 ................
000000b0  0000 0000 0000 0000 0000 0000 0000 00c0 ...............@
000000c0  2e69 6461 7461 2435 0000 0000 0000 0000 .idata$5........
000000d0  0400 0000 9000 0000 0000 0000 0000 0000 ................
000000e0  0000 0000 0000 00c0 2e69 6461 7461 2437 .......@.idata$7
000000f0  0000 0000 0000 0000 0800 0000 9400 0000 ................

Ralf

Attachment: libdll_doesntwork.a
Description: Binary data

Attachment: libdll.a
Description: Binary data


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