This is the mail archive of the cygwin-developers mailing list for the Cygwin 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]

Re: speclib vs. -lc trouble.


Dave Korn wrote:

>   I examined the link map files.  For some reason a whole bunch of .idata$4
> sections go missing when you add -lc:

> -00000000 I __imp___fseeko64


  That's interesting.  In libc.a, there is one archive member supplying
fseeko64.  In libcygwin.a, there are two, and the new one comes first in the
archive meaning it'll be linked rather than the one that matches the one in
libc.a.

    cheers,
      DaveK
dwdcs00240.o:     file format pe-i386
rw-r--r-- 500/513    598 Apr  9 18:15 2009 dwdcs00240.o
architecture: i386, flags 0x00000039:
HAS_RELOC, HAS_DEBUG, HAS_SYMS, HAS_LOCALS
start address 0x00000000

Characteristics 0x104
	line numbers stripped
	32 bit words

Time/Date		Thu Jan  1 00:00:00 1970
Magic			0000
MajorLinkerVersion	0
MinorLinkerVersion	0
SizeOfCode		00000000
SizeOfInitializedData	00000000
SizeOfUninitializedData	00000000
AddressOfEntryPoint	00000000
BaseOfCode		00000000
BaseOfData		00000000
ImageBase		00000000
SectionAlignment	00000000
FileAlignment		00000000
MajorOSystemVersion	0
MinorOSystemVersion	0
MajorImageVersion	0
MinorImageVersion	0
MajorSubsystemVersion	0
MinorSubsystemVersion	0
Win32Version		00000000
SizeOfImage		00000000
SizeOfHeaders		00000000
CheckSum		00000000
Subsystem		00000000	(unspecified)
DllCharacteristics	00000000
SizeOfStackReserve	00000000
SizeOfStackCommit	00000000
SizeOfHeapReserve	00000000
SizeOfHeapCommit	00000000
LoaderFlags		00000000
NumberOfRvaAndSizes	00000000

The Data Directory
Entry 0 00000000 00000000 Export Directory [.edata (or where ever we found it)]
Entry 1 00000000 00000000 Import Directory [parts of .idata]
Entry 2 00000000 00000000 Resource Directory [.rsrc]
Entry 3 00000000 00000000 Exception Directory [.pdata]
Entry 4 00000000 00000000 Security Directory
Entry 5 00000000 00000000 Base Relocation Directory [.reloc]
Entry 6 00000000 00000000 Debug Directory
Entry 7 00000000 00000000 Description Directory
Entry 8 00000000 00000000 Special Directory
Entry 9 00000000 00000000 Thread Storage Directory [.tls]
Entry a 00000000 00000000 Load Configuration Directory
Entry b 00000000 00000000 Bound Import Directory
Entry c 00000000 00000000 Import Address Table Directory
Entry d 00000000 00000000 Delay Import Directory
Entry e 00000000 00000000 CLR Runtime Header
Entry f 00000000 00000000 Reserved

Sections:
Idx Name          Size      VMA       LMA       File off  Algn
  0 .text         00000008  00000000  00000000  0000012c  2**2
                  CONTENTS, ALLOC, LOAD, RELOC, READONLY, CODE
  1 .data         00000000  00000000  00000000  00000000  2**2
                  ALLOC, LOAD, DATA
  2 .bss          00000000  00000000  00000000  00000000  2**2
                  ALLOC
  3 .idata$7      00000004  00000000  00000000  00000134  2**2
                  CONTENTS, RELOC
  4 .idata$5      00000004  00000000  00000000  00000138  2**2
                  CONTENTS, RELOC
  5 .idata$4      00000004  00000000  00000000  0000013c  2**2
                  CONTENTS, RELOC
  6 .idata$6      0000000c  00000000  00000000  00000140  2**1
                  CONTENTS
SYMBOL TABLE:
[  0](sec  1)(fl 0x00)(ty   0)(scl   3) (nx 0) 0x00000000 .text
[  1](sec  2)(fl 0x00)(ty   0)(scl   3) (nx 0) 0x00000000 .data
[  2](sec  3)(fl 0x00)(ty   0)(scl   3) (nx 0) 0x00000000 .bss
[  3](sec  4)(fl 0x00)(ty   0)(scl   3) (nx 0) 0x00000000 .idata$7
[  4](sec  5)(fl 0x00)(ty   0)(scl   3) (nx 0) 0x00000000 .idata$5
[  5](sec  6)(fl 0x00)(ty   0)(scl   3) (nx 0) 0x00000000 .idata$4
[  6](sec  7)(fl 0x00)(ty   0)(scl   3) (nx 0) 0x00000000 .idata$6
[  7](sec  1)(fl 0x00)(ty   0)(scl   2) (nx 0) 0x00000000 __fseeko64
[  8](sec  5)(fl 0x00)(ty   0)(scl   2) (nx 0) 0x00000000 __imp___fseeko64
[  9](sec  0)(fl 0x00)(ty   0)(scl   2) (nx 0) 0x00000000 __head_libc_a


RELOCATION RECORDS FOR [.text]:
OFFSET   TYPE              VALUE 
00000002 dir32             .idata$5


RELOCATION RECORDS FOR [.idata$7]:
OFFSET   TYPE              VALUE 
00000000 rva32             __head_libc_a


RELOCATION RECORDS FOR [.idata$5]:
OFFSET   TYPE              VALUE 
00000000 rva32             .idata$6


RELOCATION RECORDS FOR [.idata$4]:
OFFSET   TYPE              VALUE 
00000000 rva32             .idata$6


Contents of section .text:
 0000 ff250000 00009090                    .%......        
Contents of section .idata$7:
 0000 00000000                             ....            
Contents of section .idata$5:
 0000 00000000                             ....            
Contents of section .idata$4:
 0000 00000000                             ....            
Contents of section .idata$6:
 0000 00005f66 7365656b 6f363400           .._fseeko64.    

fseeko.o:     file format pe-i386
rw-r--r-- 500/513    786 Apr  9 18:15 2009 fseeko.o
architecture: i386, flags 0x00000039:
HAS_RELOC, HAS_DEBUG, HAS_SYMS, HAS_LOCALS
start address 0x00000000

Characteristics 0x104
	line numbers stripped
	32 bit words

Time/Date		Thu Jan  1 00:00:00 1970
Magic			0000
MajorLinkerVersion	0
MinorLinkerVersion	0
SizeOfCode		00000000
SizeOfInitializedData	00000000
SizeOfUninitializedData	00000000
AddressOfEntryPoint	00000000
BaseOfCode		00000000
BaseOfData		00000000
ImageBase		00000000
SectionAlignment	00000000
FileAlignment		00000000
MajorOSystemVersion	0
MinorOSystemVersion	0
MajorImageVersion	0
MinorImageVersion	0
MajorSubsystemVersion	0
MinorSubsystemVersion	0
Win32Version		00000000
SizeOfImage		00000000
SizeOfHeaders		00000000
CheckSum		00000000
Subsystem		00000000	(unspecified)
DllCharacteristics	00000000
SizeOfStackReserve	00000000
SizeOfStackCommit	00000000
SizeOfHeapReserve	00000000
SizeOfHeapCommit	00000000
LoaderFlags		00000000
NumberOfRvaAndSizes	00000000

The Data Directory
Entry 0 00000000 00000000 Export Directory [.edata (or where ever we found it)]
Entry 1 00000000 00000000 Import Directory [parts of .idata]
Entry 2 00000000 00000000 Resource Directory [.rsrc]
Entry 3 00000000 00000000 Exception Directory [.pdata]
Entry 4 00000000 00000000 Security Directory
Entry 5 00000000 00000000 Base Relocation Directory [.reloc]
Entry 6 00000000 00000000 Debug Directory
Entry 7 00000000 00000000 Description Directory
Entry 8 00000000 00000000 Special Directory
Entry 9 00000000 00000000 Thread Storage Directory [.tls]
Entry a 00000000 00000000 Load Configuration Directory
Entry b 00000000 00000000 Bound Import Directory
Entry c 00000000 00000000 Import Address Table Directory
Entry d 00000000 00000000 Delay Import Directory
Entry e 00000000 00000000 CLR Runtime Header
Entry f 00000000 00000000 Reserved

Sections:
Idx Name          Size      VMA       LMA       File off  Algn
  0 .text         00000008  00000000  00000000  0000012c  2**2
                  CONTENTS, ALLOC, LOAD, RELOC, READONLY, CODE
  1 .data         00000000  00000000  00000000  00000000  2**2
                  ALLOC, LOAD, DATA
  2 .bss          00000000  00000000  00000000  00000000  2**2
                  ALLOC
  3 .idata$7      00000004  00000000  00000000  00000134  2**2
                  CONTENTS, ALLOC, LOAD, RELOC, DATA
  4 .idata$5      00000004  00000000  00000000  00000138  2**2
                  CONTENTS, ALLOC, LOAD, RELOC, DATA
  5 .idata$4      00000004  00000000  00000000  0000013c  2**2
                  CONTENTS, ALLOC, LOAD, RELOC, DATA
  6 .idata$6      0000000c  00000000  00000000  00000140  2**2
                  CONTENTS, ALLOC, LOAD, DATA
SYMBOL TABLE:
[  0](sec -2)(fl 0x00)(ty   0)(scl 103) (nx 1) 0x00000000 fake
File 
[  2](sec  1)(fl 0x00)(ty   0)(scl   3) (nx 1) 0x00000000 .text
AUX scnlen 0x6 nreloc 1 nlnno 0
[  4](sec  2)(fl 0x00)(ty   0)(scl   3) (nx 1) 0x00000000 .data
AUX scnlen 0x0 nreloc 0 nlnno 0
[  6](sec  3)(fl 0x00)(ty   0)(scl   3) (nx 1) 0x00000000 .bss
AUX scnlen 0x0 nreloc 0 nlnno 0
[  8](sec  4)(fl 0x00)(ty   0)(scl   3) (nx 1) 0x00000000 .idata$7
AUX scnlen 0x4 nreloc 1 nlnno 0
[ 10](sec  5)(fl 0x00)(ty   0)(scl   3) (nx 1) 0x00000000 .idata$5
AUX scnlen 0x4 nreloc 1 nlnno 0
[ 12](sec  6)(fl 0x00)(ty   0)(scl   3) (nx 1) 0x00000000 .idata$4
AUX scnlen 0x4 nreloc 1 nlnno 0
[ 14](sec  7)(fl 0x00)(ty   0)(scl   3) (nx 1) 0x00000000 .idata$6
AUX scnlen 0xc nreloc 0 nlnno 0
[ 16](sec  1)(fl 0x00)(ty   0)(scl   2) (nx 0) 0x00000000 _fseeko
[ 17](sec  5)(fl 0x00)(ty   0)(scl   2) (nx 0) 0x00000000 __imp__fseeko
[ 18](sec  0)(fl 0x00)(ty   0)(scl   2) (nx 0) 0x00000000 __imp___fseeko64
[ 19](sec  0)(fl 0x00)(ty   0)(scl   2) (nx 0) 0x00000000 __head_cygwin1_dll


RELOCATION RECORDS FOR [.text]:
OFFSET   TYPE              VALUE 
00000002 dir32             __imp___fseeko64


RELOCATION RECORDS FOR [.idata$7]:
OFFSET   TYPE              VALUE 
00000000 dir32             __head_cygwin1_dll


RELOCATION RECORDS FOR [.idata$5]:
OFFSET   TYPE              VALUE 
00000000 rva32             .idata$6


RELOCATION RECORDS FOR [.idata$4]:
OFFSET   TYPE              VALUE 
00000000 rva32             .idata$6


Contents of section .text:
 0000 ff250000 00009090                    .%......        
Contents of section .idata$7:
 0000 00000000                             ....            
Contents of section .idata$5:
 0000 00000000                             ....            
Contents of section .idata$4:
 0000 00000000                             ....            
Contents of section .idata$6:
 0000 02005f66 7365656b 6f363400           .._fseeko64.    

d000276.o:     file format pe-i386
rw-r--r-- 500/513    487 Apr  9 18:14 2009 d000276.o
architecture: i386, flags 0x00000039:
HAS_RELOC, HAS_DEBUG, HAS_SYMS, HAS_LOCALS
start address 0x00000000

Characteristics 0x104
	line numbers stripped
	32 bit words

Time/Date		Thu Jan  1 00:00:00 1970
Magic			0000
MajorLinkerVersion	0
MinorLinkerVersion	0
SizeOfCode		00000000
SizeOfInitializedData	00000000
SizeOfUninitializedData	00000000
AddressOfEntryPoint	00000000
BaseOfCode		00000000
BaseOfData		00000000
ImageBase		00000000
SectionAlignment	00000000
FileAlignment		00000000
MajorOSystemVersion	0
MinorOSystemVersion	0
MajorImageVersion	0
MinorImageVersion	0
MajorSubsystemVersion	0
MinorSubsystemVersion	0
Win32Version		00000000
SizeOfImage		00000000
SizeOfHeaders		00000000
CheckSum		00000000
Subsystem		00000000	(unspecified)
DllCharacteristics	00000000
SizeOfStackReserve	00000000
SizeOfStackCommit	00000000
SizeOfHeapReserve	00000000
SizeOfHeapCommit	00000000
LoaderFlags		00000000
NumberOfRvaAndSizes	00000000

The Data Directory
Entry 0 00000000 00000000 Export Directory [.edata (or where ever we found it)]
Entry 1 00000000 00000000 Import Directory [parts of .idata]
Entry 2 00000000 00000000 Resource Directory [.rsrc]
Entry 3 00000000 00000000 Exception Directory [.pdata]
Entry 4 00000000 00000000 Security Directory
Entry 5 00000000 00000000 Base Relocation Directory [.reloc]
Entry 6 00000000 00000000 Debug Directory
Entry 7 00000000 00000000 Description Directory
Entry 8 00000000 00000000 Special Directory
Entry 9 00000000 00000000 Thread Storage Directory [.tls]
Entry a 00000000 00000000 Load Configuration Directory
Entry b 00000000 00000000 Bound Import Directory
Entry c 00000000 00000000 Import Address Table Directory
Entry d 00000000 00000000 Delay Import Directory
Entry e 00000000 00000000 CLR Runtime Header
Entry f 00000000 00000000 Reserved

Sections:
Idx Name          Size      VMA       LMA       File off  Algn
  0 .text         00000008  00000000  00000000  000000dc  2**2
                  CONTENTS, ALLOC, LOAD, RELOC, CODE
  1 .idata$7      00000004  00000000  00000000  000000e4  2**2
                  CONTENTS, RELOC
  2 .idata$5      00000004  00000000  00000000  000000e8  2**2
                  CONTENTS, RELOC
  3 .idata$4      00000004  00000000  00000000  000000ec  2**2
                  CONTENTS, RELOC
  4 .idata$6      0000000c  00000000  00000000  000000f0  2**2
                  CONTENTS
SYMBOL TABLE:
[  0](sec  1)(fl 0x00)(ty   0)(scl   3) (nx 0) 0x00000000 .text
[  1](sec  2)(fl 0x00)(ty   0)(scl   3) (nx 0) 0x00000000 .idata$7
[  2](sec  3)(fl 0x00)(ty   0)(scl   3) (nx 0) 0x00000000 .idata$5
[  3](sec  4)(fl 0x00)(ty   0)(scl   3) (nx 0) 0x00000000 .idata$4
[  4](sec  5)(fl 0x00)(ty   0)(scl   3) (nx 0) 0x00000000 .idata$6
[  5](sec  1)(fl 0x00)(ty   0)(scl   2) (nx 0) 0x00000000 __fseeko64
[  6](sec  3)(fl 0x00)(ty   0)(scl   2) (nx 0) 0x00000000 __imp___fseeko64
[  7](sec  0)(fl 0x00)(ty   0)(scl   2) (nx 0) 0x00000000 __head_cygwin1_dll


RELOCATION RECORDS FOR [.text]:
OFFSET   TYPE              VALUE 
00000002 dir32             .idata$5


RELOCATION RECORDS FOR [.idata$7]:
OFFSET   TYPE              VALUE 
00000000 rva32             __head_cygwin1_dll


RELOCATION RECORDS FOR [.idata$5]:
OFFSET   TYPE              VALUE 
00000000 rva32             .idata$6


RELOCATION RECORDS FOR [.idata$4]:
OFFSET   TYPE              VALUE 
00000000 rva32             .idata$6


Contents of section .text:
 0000 ff250000 00009090                    .%......        
Contents of section .idata$7:
 0000 00000000                             ....            
Contents of section .idata$5:
 0000 00000000                             ....            
Contents of section .idata$4:
 0000 00000000                             ....            
Contents of section .idata$6:
 0000 13015f66 7365656b 6f363400           .._fseeko64.    


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