Mail Archives: cygwin-developers/2000/01/09/17:43:42
Kazuhiro Fujieda <fujieda AT jaist DOT ac DOT jp> writes:
> On my NT Server 4.0 Sp5, the stripped size is different from one
> in the Corinna's report.
>
> with strip 2.9.4: 545792 bytes (this works)
> with strip 2.9-19990911: 521216 bytes (this not)
>
> The latter binary can be obtained from
> http://www.jaist.ac.jp/~fujieda/cygwin/new-cygwin1.dll.gz
I'm not worried about the size, but rather the section contents
and section flags.
I should've copied you my response to Corinna that points out the
problem (alas, not the solution). Note your stripped DLL suffers
from the same problem as Corinna's, so something is obviously
very wrong. I'm going to rebuild and see if I can reproduce this
on the machines I have access to -- Win98 SE and WinNT 4.0 SP3.
I'll be able to check a Win95 machine tomorrow. What are you
running?
====
Thanks. I see very odd things in your stripped DLL, and don't know
what's going on. Could you please verify that you're indeed running
the new tools, and not mixing with old ones (ie., from old binutils)?
$ gcc -print-prog-name=ld
$ gcc -print-prog-name=as
and so on for all of those, including strip.
The .data section is very wrong, and .text section size is a bit
different as well (which may be ok):
$ objdump -h corrina-cygwin1.dll
Idx Name Size VMA LMA File off Algn
0 .text 00070c00 61001000 61001000 00000400 2**2
CONTENTS, ALLOC, LOAD, READONLY, CODE
1 .data 00007200 61072000 61072000 00071000 2**2
CONTENTS, ALLOC, LOAD, CODE, DATA
^^^^ wrong
2 .bss 00005be4 6107a000 6107a000 00000000 2**2
ALLOC
3 .edata 00004e00 61080000 61080000 00078200 2**2
CONTENTS, ALLOC, LOAD, READONLY, DATA
4 .idata 00001a00 61085000 61085000 0007d000 2**2
CONTENTS, ALLOC, LOAD, DATA
5 .rsrc 00000600 6108d000 6108d000 0007ea00 2**2
CONTENTS, ALLOC, LOAD, DATA, SHARED
Here's what I get from my stripped DLL:
Idx Name Size VMA LMA File off Algn
0 .text 00071000 61001000 61001000 00000400 2**2
CONTENTS, ALLOC, LOAD, READONLY, CODE
1 .data 00007200 61072000 61072000 00071400 2**2
CONTENTS, ALLOC, LOAD, DATA
2 .bss 00005be4 6107a000 6107a000 00000000 2**2
ALLOC
3 .edata 00004e00 61080000 61080000 00078600 2**2
CONTENTS, ALLOC, LOAD, READONLY, DATA
4 .idata 00001a00 61085000 61085000 0007d400 2**2
CONTENTS, ALLOC, LOAD, DATA
5 .rsrc 00000600 6108e000 6108e000 0007ee00 2**2
CONTENTS, ALLOC, LOAD, DATA, SHARED
And unstripped:
Idx Name Size VMA LMA File off Algn
0 .text 00071000 61001000 61001000 00000400 2**2
CONTENTS, ALLOC, LOAD, READONLY, CODE
1 .data 00007200 61072000 61072000 00071400 2**2
CONTENTS, ALLOC, LOAD, DATA
2 .bss 00005be4 6107a000 6107a000 00000000 2**2
ALLOC
3 .edata 00004e00 61080000 61080000 00078600 2**2
CONTENTS, ALLOC, LOAD, READONLY, DATA
4 .idata 00001a00 61085000 61085000 0007d400 2**2
CONTENTS, ALLOC, LOAD, DATA
5 .reloc 00006200 61087000 61087000 0007ee00 2**2
CONTENTS, ALLOC, LOAD, READONLY, DATA, DEBUGGING, SHARED
6 .rsrc 00000600 6108e000 6108e000 00085000 2**2
CONTENTS, ALLOC, LOAD, DATA, SHARED
7 .stab 00143c00 6108f000 6108f000 00085600 2**2
CONTENTS, READONLY, DEBUGGING, NEVER_LOAD, EXCLUDE, SHARED
8 .stabstr 00333e00 611d3000 611d3000 001c9200 2**0
CONTENTS, READONLY, DEBUGGING, NEVER_LOAD, EXCLUDE, SHARED
Please check these on your unstripped DLL as well.
I'm going to build all of this natively and see how it goes. Did you use
the binutils binary distribution or the source one?
Regards,
Mumit
- Raw text -